版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、.數(shù)據(jù)庫SQL上機(jī)實(shí)驗(yàn)報告書姓名: 學(xué)號: 班級: 實(shí)驗(yàn)一:設(shè)計(jì)數(shù)據(jù)庫、數(shù)據(jù)表并編程實(shí)現(xiàn)建立student表create table Student(sno char(9) Primary key,sname char(10)constraint c1 not null,sbirthday DateTime,ssex char(2)constraint c2 check(ssex in (男,女),sclass char(20),sremark char(100),adress char(40),zipcode char(6),phone char(15),email char(40);建立c
2、ourse表:create table Course(cno char(6)primary key,cname char(20),cpno char(6),ctime Numeric(2),credit Numeric(2),Foreign key(cpno)References Course(cno);建立score表:create table Score(sno char(9),cno char(6),score Numeric(3),Primary key(sno,cno),Foreign key (sno)References Student(sno),Foreign key (cno
3、)References Course(cno);建立Teacher表:create table Teacher(tno char(7)primary key,tname char(10),tsex char(2),tbirthday DateTime,position char(12),department char(16),tamount Numeric(7,2),experience char(200);建立Teachering 表create table Teaching(tno char(7),cno char(6),tdate Datetime,classroom char(10),
4、sclass char(20), Primary key(tno,cno),Foreign key(tno)References Teacher(tno),Foreign key(cno)References Course(cno),) 實(shí)驗(yàn)二:設(shè)計(jì)數(shù)據(jù)插入、修改、刪除、查詢和視圖等操作并編程實(shí)現(xiàn)(1)根據(jù)以下給定的部分?jǐn)?shù)據(jù)表信息,分別對student, course, score, teacher, teching 表進(jìn)行數(shù)據(jù)插入。Student表插入語句:Insert into Student (sno,sname, sbirthday ,ssex,sclass, sremark, adr
5、ess, zipcode, phone, email)Values(011110101,章海潮,1982.02.07,信管系0101)Course表插入語句:Insert intoCourse (cno, cname, cpno, ctime, credit)Values (C001,數(shù)據(jù)庫原理,C005,4,64, )Score 表插入語句:Insert intoScore (sno,cno,score, )Values (0111101,C001,90)Teacher 表插入語句:Insert intoTeacher (tno,tname,tsex,tbirthday,position,d
6、epartment,tamount,experience )Values (T001, 江承基 ,男 ,信息管理系 ,1964.03.21)Teachering 表插入語句:Insert intoTeachering (tno,cno,tdate,classroom,sclass)Values (T001,C005,2012-01-09, 西二405, 信管系0101 )(2)查詢?nèi)w學(xué)生的詳細(xì)記錄;select *from Student left outer join Score on(Student.sno=Score.sno); (3)查詢?nèi)w學(xué)生的學(xué)號與姓名;select sno,s
7、namefrom Student (4)查詢?nèi)w學(xué)生的學(xué)號、姓名、所屬班級,相同班級列在一起;select sno,sname,sclassfrom Studentorder by sclass DESC;(5)查詢?nèi)w學(xué)生的姓名、出生年份;select sname,sbirthdayfrom Student; (6)查詢?nèi)w學(xué)生的姓名及其年齡;select sname, year(getdate()-year(sbirthday)from Student; (7)查詢“信管系0101”班全體學(xué)生名單; select snamefrom Studentwhere sclass=信管系0101;
8、(8)查詢查詢所有年齡在27歲以下的學(xué)生姓名及其年齡; select sname,year(getDate()-year(sbirthday)from Studentwhere year(getdate()-year(sbirthday)30(9)查詢考試成績有不及格的學(xué)生的學(xué)號; select Student.snofrom Student,Scorewhere Student.sno=Score.sno and score15 and year(getdate()-year(sbirthday)15 and year(getdate()-year(sbirthday)60(24)求每門課的
9、平均成績,并把結(jié)果存入average表;create table Average(cno char(6)primary key, average Numeric(3)insert into Average(cno,average)select cno,avg(score)from Scoregroup by cno; (25)將學(xué)生“馬麗鵑”的出生日期改為“1982.8.20”; update Studentset Sbirthday=1982.08.20where sname=馬麗鵑(26)將所有學(xué)生的zipcode屬性列的值填改為“230009”;update Studentset zip
10、code=230009 (27)將average表中的所有課程的平均成績置零; update Averageset average=0(28)刪除average表中的課程號為c007的平均成績記錄;delete averagefrom Averagewhere cno=c007 (29)刪除所有average表中平均成績記錄; alter table Averagedrop column average(30)建立一個臨時學(xué)生信息表(tstudent),刪除該表中的學(xué)號前六位為001011的學(xué)生記錄。 create table tstudent( sno Char(9) primary key
11、, sname Char(10),sbirthday DateTime,ssex Char(2), sclass Char(20),sremark Char(100),address Char(40), zipcode Char(6),phone Char(15), email Char(40) );delete from tstudentwhere sno like 001011%(31)查找“電商系0101”班年齡在27歲以下的學(xué)生學(xué)號、姓名;select sno,snamefrom Studentwhere year(getdate()-year(sbirthday)60 and max
12、(score)=2)(41)使用自身連接查詢每一門課程的間接先行課(即先行課的先行課)select o,c2.cpnofrom course c1,course c2where c1.cpno=o (42)使用復(fù)合條件連接查詢選修“c001”號課程且成績在90分以上的所有同學(xué); select student.sno,snamefrom score,studentwhere cno=c001and student.sno=score.sno and score.score90(43)使用復(fù)合條件連接查詢每個學(xué)生選修的課程名及其成績; select cno,score,snam
13、efrom score,studentwhere student.sno=score.sno(44)查詢選修了全部課程的學(xué)生; select snamefrom Studentwhere not exists(select*from Coursewhere not exists(select *from scorewhere sno=Student.sno and cno=o)(45)查詢至少選修全部學(xué)分?jǐn)?shù)為4個學(xué)分的課程的學(xué)生的學(xué)號、姓名;select student.snofrom student,score,coursewhere student.sno=score.s
14、no and o=o group by student.snohaving sum(credit)=4 (46)查選修C005號課程且成績至少高于選修C003課程的同學(xué)的Sno,按sno從高到低排序;select distinct sx.sno descfrom score sxwhere cno=c001 and sx.scoreall(select sy.scorefrom score sywhere cno=c007) (47)查詢選修了課程C001或c007的學(xué)生學(xué)號、姓名;select student.sno,snamefrom score ,stu
15、dentwhere cno=c001or cno=c007and student.sno=score.sno (48)查詢既選修了課程C001又選修了課程c007的所有學(xué)生學(xué)號、姓名;select student.sno,snamefrom student,score sx,score sywhere o=c001and o=c007 and student.sno=sx.sno and student.sno=sy.sno (49)查詢“會計(jì)系0102”班的學(xué)生及年齡不大于27歲(現(xiàn)有年齡)的學(xué)生;select snamefrom studentwhere sclass=
16、會計(jì)系0102 and year(getdate()-year(sbirthday)=27 (50)查詢選修了課程名為“數(shù)據(jù)庫原理”的學(xué)生的學(xué)號、姓名、性別、年齡; select sno,sname,ssex,year(getdate()-year(sbirthday)from studentwhere sclass=數(shù)據(jù)庫原理(51)查詢其他班中比“信管系0101”班所有學(xué)生年齡都小的學(xué)生名單;select sx.snamefrom Student sx where sx.sclass !=信管系0101 and year(getdate()-year(sbirthday)90(57)定義一
17、個反映學(xué)生年齡的視圖,定義視圖名為“vbirthday_student”;create view vbirthday_student(sno,sname,sage)asselect sno,sname ,year(getdate()-year(sbirthday)from student (58)將學(xué)生表中所有女生記錄定義為一個視圖,視圖名為“vfemale_student”;create view Vfemale_student(sno,sname,ssex)asselect sno,sname,ssexfrom studentwhere ssex= (59)將學(xué)生的學(xué)號及其平均成績定義為一
18、個視圖,視圖名為“vaverage_student”; create view vaverage_student(sno,aveg)asselect sno, Avg(score)from score group by sno(60)刪除視圖“info_student1”,刪除后即重建; use 學(xué)生管理goif object_id(info_student1) is not nulldrop view info_student1gocreate view info_student1asselect *from Studentwhere sclass = 信管系0101(61)在“信管系010
19、1”班學(xué)生視圖中找出年齡小于27歲(現(xiàn)在的年齡)的學(xué)生; select sno, snamefrom info_student1where year(getdate()-year(sbirthday)27(62)利用視圖查詢“信管系0101”班選修了“C001”課程的學(xué)生; select snamefrom info_c001_student1(63)通過“信管系0101”班info_student2視圖中學(xué)號“011111103”的學(xué)生姓名改為“潘長江”; update info_student2set sname=潘長江where sno=011111103(64)向“信管系0101”班i
20、nfo_student1視圖中插入一個新學(xué)生記錄,其中:學(xué)號:011111136,姓名:張藝謀,性別:男,出生日期:1987.11.9; insert into info_student1values(011111136,張藝謀,1987.11.9,男,)(65)通過視圖info_student1刪除信管系0101班學(xué)號為“011111135”、姓名為“黃健中”的學(xué)生記錄;delete from info_student1where sno=011111135 and sname=黃建中實(shí)驗(yàn)三、數(shù)據(jù)庫存儲過程、觸發(fā)器的建立及編程操作的實(shí)現(xiàn)(4)執(zhí)行命令語句:Exec Exam_Proc 201
21、2213451 , 宋春龍 的結(jié)果為(5)建立觸發(fā)器:貨物信息表:create table貨物信息表(貨物號 char(4) primary key, 貨物名 char (20), 規(guī)格 char (20), 型號 char(20), 說明 char (20)庫存表:create table 庫存表(貨物號 char(4) primary key, 更新日期 datetime , 庫存量 numeric(9,2)入庫表:create table 入庫表(入庫時間 datetime,貨物號 char (4), 入庫數(shù)量 Numeric(9,2), 經(jīng)辦人 char(10),primary key(入庫時間,貨物號)出庫表:create table 出庫表(出庫時間 datetime, 貨物號 char(4), 出庫數(shù)據(jù) numeric (9,2), 經(jīng)辦人 char (10)primary key (出庫時間,貨物號)更新出庫表:CREATE TRIGGER出庫on 出庫表after insertas begindeclare hwh char(4),RKL numeric(9,2) select hwh=貨物號, RKL=出庫數(shù)量 from inserted if exists( select * from 庫存表 where 貨物號=hwh) update 庫存表
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 公司員工安全培訓(xùn)試題帶答案下載
- 公司項(xiàng)目部管理人員安全培訓(xùn)試題及答案綜合卷
- 植皮粘合用生物粘合劑行業(yè)相關(guān)投資計(jì)劃提議
- 電路課程設(shè)計(jì)要寫啥論文
- 火電廠的廠房課程設(shè)計(jì)
- 短路和斷路的課程設(shè)計(jì)
- 冷霜機(jī)機(jī)械原理課程設(shè)計(jì)
- 名畫續(xù)畫水粉課程設(shè)計(jì)
- 正畸用橡皮筋相關(guān)項(xiàng)目實(shí)施方案
- 男生動漫發(fā)型課程設(shè)計(jì)
- 《中國腫瘤防治核心科普知識(2024)》解讀
- 胃腸鏡麻醉專家共識解讀
- 2024至2030年中國二氧化硅行業(yè)市場調(diào)查與投資前景研究報告
- DB37T-動物疫病鑒別檢測技術(shù) 第1部分:豬瘟強(qiáng)毒與豬瘟疫苗弱毒
- 2023年10月上海開放大學(xué)工作人員招考聘用筆試歷年典型考題及考點(diǎn)剖析附答案詳解
- 2024年中國移動咪咕校園招聘(高頻重點(diǎn)提升專題訓(xùn)練)共500題附帶答案詳解
- 區(qū)塊鏈技術(shù)在銀行業(yè)的應(yīng)用與創(chuàng)新
- HG∕T 2976-2011 化肥催化劑磨耗率的測定
- 年產(chǎn)10萬噸煤系針狀焦及配套2×15萬噸年焦油深加工化工項(xiàng)目可行性研究報告
- 人教PEP版英語四上《Unit 4 My Home》教學(xué)設(shè)計(jì)
- 2024年安徽滁州鳳陽縣殯葬管理所招聘火化工2人歷年(高頻重點(diǎn)復(fù)習(xí)提升訓(xùn)練)共500題附帶答案詳解
評論
0/150
提交評論