河南科技大學(xué)數(shù)據(jù)庫(kù)實(shí)驗(yàn)報(bào)告_第1頁(yè)
河南科技大學(xué)數(shù)據(jù)庫(kù)實(shí)驗(yàn)報(bào)告_第2頁(yè)
河南科技大學(xué)數(shù)據(jù)庫(kù)實(shí)驗(yàn)報(bào)告_第3頁(yè)
已閱讀5頁(yè),還剩10頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、實(shí)驗(yàn)一:數(shù)據(jù)定義及更新語(yǔ)句練習(xí)一實(shí)驗(yàn)?zāi)康模菏炀氄莆沼?SQL 語(yǔ)句實(shí)現(xiàn)數(shù)據(jù)庫(kù)和根本表的創(chuàng)立、數(shù)據(jù)的更新。二實(shí)驗(yàn)內(nèi)容:一用SQL語(yǔ)句建立如下 mySPJ數(shù)據(jù)庫(kù),包括S, P, J,和SPJ四個(gè)根本表教材第二章 習(xí) 題 5 中的四個(gè)表 ,要求實(shí)現(xiàn)關(guān)系的三類完整性。SSNO,SNAME,STA TUS,CITY ;PPNO,PNAME,COLOR,WEIGHT ;J JNO,JNAME,CITY ;SPJSNO,PNO,JNO,QTY 供給商表S由供給商代碼SNO、供給商姓名SNAM E供給商狀態(tài)STATUS、供給商所在城 市 CITY 、組成。零件表 P 由零件代碼 PNO 、零件名 PNAM 、

2、顏色 COLO 、重量 WEIGHT 組成。 工程工程表 J 由工程工程代碼 JNO 、工程工程名 JNAME 、工程工程所在城市 CITY 組成。供給情況表SPJ由供給商代碼SNO、零件代碼PNO、工程工程代碼JNO、供給數(shù)量QTY 組成,表示某供給商供給某種零件 給某工程工程的數(shù)量為 QTY二在數(shù)據(jù)庫(kù) mySPJ 中建立 S, P, J ,和 SPJ 四個(gè)根本表: 按照實(shí)驗(yàn)內(nèi)容給出的根本表結(jié)構(gòu)在 查詢分析器窗口中書寫 SQL 語(yǔ)句分別建立各表,并設(shè)置主鍵和外鍵約束;三完成情況USE masterGOCREATE DATABASE myspjON NAME = TEXTS_dat ,FILE

3、NAME = 數(shù)據(jù)庫(kù)實(shí)驗(yàn) myspjdat.mdf' ,SIZE = 10 ,MAXSIZE = 50 ,FILEGROWTH = 5 LOG ON NAME = 'TEXTS_log' ,FILENAME = 數(shù)據(jù)庫(kù)實(shí)驗(yàn) myspjlog.ldf',SIZE = 5 MB,MAXSIZE = 25 MB,FILEGROWTH = 5 MB bGO create table ssno char ( 9) primary key , sname char ( 20), statu int , city char ( 20 ),);create table p( p

4、no char ( 9) primary key , pname char ( 20), color char ( 20), weigh int , );create table j( jno char ( 9) primary key , jname char ( 20), city char ( 20 ), );create table spj sno char ( 9), pno char ( 9), jno char ( 9), qty int ,primarykey( sno , pno , jno ),foreignkey( sno ) referencess( sno ),for

5、eignkey( pno ) referencesp( pno ),foreign );key( jno ) referencesj ( jno ),八1. 利用Insert語(yǔ)句將習(xí)題中給出的例如記錄插入各表。insert into svalues ( 's1' , ' 精益 ' , '20' , ' 天津 ' ); insertinto svalues ( 's2' , ' 盛錫 ' , '10' , ' 北京 ' ); insert into svalues(&#

6、39;s3','東方紅','30','北京');in sertinto!svalues('s4','豐泰盛','20','天津');in sertinto!svalues('s5','為民','30','上海');in sertinto>values('p1','螺母','紅','12');in sertinto>values('

7、p2','螺栓','綠','17');in sertinto1values('p3','螺絲刀','藍(lán)','14');in sertinto>values('p4','螺絲刀','紅','14');in sertinto>values('p5','凸輪','藍(lán)','40');in sertinto>values('p6

8、9;,嚙輪','紅','30');in sertinto jivalues(ji','三建','北京');in sertinto jivalues('j2','一汽','長(zhǎng)春 );in sertinto jivalues('j3','彈簧廠','天津');in sertinto jivalues('j4','造船廠','天津');in sertinto jivalues('

9、j5','機(jī)車廠','唐山');in sertinto jivalues in sert('j6','無(wú)線電廠','常州');intojvalues('j7','半導(dǎo)體廠南京';in sertintospjvalues('s1','p1','j1','200');in sertintospjvalues('s1','p1','j3','100');i

10、n sertintospjvalues('s1','p1','j4','700');in sertintospjvalues('s1','p2','j2','100');in sertintospjvalues('s2','p31','j1','400');in sertintospjvalues('s2','p3','j2','200');

11、in sertintospjvalues('s2','p3','j4','500');in sertintospjvalues('s2','p3','j5','400');in sertintospjvalues('s2','P5','j1','400');in sertintospjvalues('s2','p5','j2','100');

12、in sertintospjvalues('s3','p1','j1','200');in sertintospjvalues('s3','p3','j1','200');in sertintospjvalues('s4','p5','j1','100');in sertintospjvalues('s4','P6','j3'insert into spjv

13、alues ( 's4'insert into spj, 'p6' , 'j4', '200' );values ( 's5'insert into spjvalues ( 's5', 'p2' , 'j4', '100' );insert into spjvalues ( 's5', 'p3' , 'j1', '200' );, 'p6' , 'j2' ,

14、 '200' );2. 利用 Update 更新表中的記錄:1將p表中的所有紅色零件的重量增加5。update pset weigh =weigh +5 where color =' 紅' ;2將spj表中所有天津供給商的QTY屬性值減少10。用子查詢并記錄在實(shí)驗(yàn)報(bào)告中。update spjset qty =qty - 10where sno in(select snofrom swhere city =' 天津 ');3. 利用 Delete 語(yǔ)句刪除 p 表中的所有紅色零件的記錄。deletefrom pwhere color ='

15、紅 ' ;思考題一在為各表設(shè)定關(guān)鍵字時(shí)彈出的頁(yè)面中有關(guān)鍵字和索引選項(xiàng), 試通過(guò)給根本表設(shè)定 這兩個(gè) 工程并說(shuō)明二者的區(qū)別。答: 關(guān)鍵字受主鍵影響,而索引不受主鍵影響二 在根本表中輸入數(shù)據(jù)時(shí), 注意數(shù)據(jù)與字段的數(shù)據(jù)類型和長(zhǎng)度以及能否為空的屬性 是否一致, 保存時(shí)如有錯(cuò)誤分析錯(cuò)誤原因,及時(shí)改正并將錯(cuò)誤報(bào)告寫在實(shí)驗(yàn)報(bào)告中。七實(shí)驗(yàn)總結(jié):心得體會(huì),建答:從這次實(shí)驗(yàn)中我明白一個(gè)道理:議等。細(xì)節(jié)決定成敗, 尤其是要注意 sql 語(yǔ)言與 c 語(yǔ)言的差異實(shí)驗(yàn)二:簡(jiǎn)單查詢和連接查詢一實(shí)驗(yàn)?zāi)康模菏炀氄莆沼?SQL 語(yǔ)句實(shí)現(xiàn)的簡(jiǎn)單查詢和多個(gè)數(shù)據(jù)表連接查詢二實(shí)驗(yàn)內(nèi)容:一 完成下面的簡(jiǎn)單查詢: 查詢所有“天津的供

16、給商明細(xì); 查詢所有“紅色的 14 公斤以上的零件。 查詢工程名稱中含有“廠字的工程明細(xì)。二 完成下面的連接查詢: 等值連接:求 s 表和 j 表的相同城市的等值連接。并按照 自然連接:查詢所有的供給明細(xì),要求顯示供給商、零件和工程的名稱, 供給、工程、零件排序。 笛卡爾積:求 s 和 p 表的笛卡爾積 左連接:求 j 表和 spj 表的左連接。 右連接:求 spj 表和 j 表的右連接。三完成情況三 完成下面的簡(jiǎn)單查詢: 詢所有“天津的供給商明細(xì); select *from swhere city =' 天津 ' ; 查詢所有“紅色的 14 公斤以上的零件。select pn

17、ofrom p where color =' 紅 ' and weigh >14 ; 查詢工程名稱中含有“廠字的工程明細(xì)。 select * from jwhere jname like '% 廠 ' ;四 完成下面的連接查詢:selects.*, j .*from s, jwhere s. city =j . city ; 自然連接:查詢所有的供給明細(xì),要求顯示供給商、零件和工程的名稱, 并按照 供給、工程、零件排序。select s. sname , p. pname , j . jname from s, p, j , spjwhere s. sno

18、 =spj . sno and p. pno =spj . pno and j . jno =spj . jno 笛卡爾積:求 s 和 p 表的笛卡爾select *from s, p 左連接:求 j 表和 spj 表的左連接。select j .*, sno , pno , qtyfrom j left outer join spj on ( j . jno =spj . jno ); 右連接:求 spj 表和 j 表的右連接。select j .*, sno , pno , qtyfrom spj right outer join j on ( j . jno =spj . jno );答

19、復(fù)思考題提出的問(wèn)題,查看實(shí)驗(yàn)內(nèi)容 2 中左連接和右連接的執(zhí)行結(jié)果是否一致,為什么? 答:不一樣,左連接是輸出第一個(gè)表的全部,二右連接是輸出第二個(gè)表的全部。 七實(shí)驗(yàn)總結(jié):心得體會(huì),建議等。答:從這次實(shí)驗(yàn)中我明白一個(gè)道理: 細(xì)節(jié)決定成敗, 尤其是要注意 sql 語(yǔ)言與 c 語(yǔ)言的差異。實(shí)驗(yàn)三:分組查詢和嵌套查詢、實(shí)驗(yàn)?zāi)康模菏炀氄莆沼?SQL 語(yǔ)句實(shí)現(xiàn)多個(gè)數(shù)據(jù)表的分組查詢和嵌套查詢。、實(shí)驗(yàn)內(nèi)容: 完成下面的查詢:(一 ) 完成下面的查詢:1、分組查詢: 求各種顏色零件的平均重量。 selectcolor,AVG(weigh)weight from p group by color; 求北京供給商和天

20、津供給商的總個(gè)數(shù)。 select COUNT (city) 個(gè)數(shù) from s where city =' 北京 'or city = ' 天津 ' 求各供給商供給的零件總數(shù)。select sno,sum(qty ) 數(shù)目from spj group by snoorder by 數(shù)目 asc; 求各供給商供給給各工程的零件總數(shù)。select sno,jno ,sum(qty ) 數(shù)目from spjgroup by sno,jno; 求使用了 100 個(gè)以上 P1 零件的工程名稱。 select jname from j where jno in(select

21、 jnofrom spjwhere pno='p1' and qty>100); 求各工程使用的各城市供給的零件總數(shù)。 select jname from j where jno in( select jno from spj where pno='p1' and qty>100);二) 嵌套查詢:1. in 連接謂詞查詢: 查詢沒(méi)有使用天津供給商供給的紅色零件的工程名稱。 select jname from j where jno not in( select jno from s,p,spj where spj.sno=s.snoand spj.

22、pno=p.pno andp.color='紅'ands.city=' 天津') 查詢供給了 1000 個(gè)以上零件的供給商名稱。 (having) selectsname from s where snoin(selectsno from spj group bysno having SUM (qty)>1000)2. 比擬運(yùn)算符:求重量大于所有零件平均重量的零件名稱。 selectpnamefrom p where weigh>( select AVG ( weigh)from p3. )Exists 連接謂詞: 查詢供給 J1 的所有的零件都是紅

23、色的供給商名稱。selectsname from s where exists( select * from p,spjwhere p.pno=spj.pno andspj .sno=s.sno and jno ='j1' andcolor=' 紅');實(shí)驗(yàn)五:觸發(fā)器和存儲(chǔ)過(guò)程一、實(shí)驗(yàn)報(bào)告要求:一實(shí)驗(yàn)?zāi)康模豪斫庥|發(fā)器和存儲(chǔ)過(guò)程的含義,掌握用SQL語(yǔ)句實(shí)現(xiàn)觸發(fā)器和存儲(chǔ)過(guò)程的編寫,并初步掌握什么情況下使用事務(wù)。二實(shí)驗(yàn)內(nèi)容:有一個(gè)小型的圖書管理數(shù)據(jù)庫(kù),包含的表為:bookstore(bookid ,book name , bookauthor , purchaseda

24、te,state;-圖書庫(kù)存表borrowcard(cardid ,ownername;-借書證表borrowlog(cardid ,bookid , borrowdate , returndate );-借書記錄表寫一個(gè)存儲(chǔ)過(guò)程,實(shí)現(xiàn)借書操作,要求有事務(wù)處理。1 讀者借書,要先設(shè)置書籍不在庫(kù)標(biāo)志state 借出,然后增加借書記錄,在同一事務(wù)中完成。2要求在事務(wù)執(zhí)行過(guò)程中引入錯(cuò)誤觸發(fā)事件,以此體會(huì)事務(wù)的錯(cuò)誤保護(hù)機(jī)制和事務(wù)編程的作用。3要求用觸發(fā)器實(shí)現(xiàn)表的完整性控制。三完成情況附上設(shè)計(jì)的 SQL語(yǔ)句。建立數(shù)據(jù)庫(kù): create databasebookstor usebookstor creat

25、etable bookstore(bookid int,bookname char(20),bookauthor char(20), purchasedate char(20), stat char( 6), primary key (bookid ), Check(statin(' 在庫(kù)','不在庫(kù) ',);createtable borrowcard(cardid int primary key, ownername char(20),);createtable borrowlog(cardid int,bookid int,borrowdate char(20), returndatechar(20), primary key(cardid,bookid), foreign key(cardid)referencesborrowcard(cardid), foreign key(bookid)referencesbookstore(bookid),);存儲(chǔ)過(guò)程:char(20),returndateand stat=' 在 庫(kù) '

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論