《數(shù)據(jù)庫(kù)系統(tǒng)》上機(jī)題,實(shí)驗(yàn)四:T

上傳人:daj****de2 文檔編號(hào):57645283 上傳時(shí)間:2022-02-24 格式:DOC 頁(yè)數(shù):20 大?。?91.50KB
收藏 版權(quán)申訴 舉報(bào) 下載
《數(shù)據(jù)庫(kù)系統(tǒng)》上機(jī)題,實(shí)驗(yàn)四:T_第1頁(yè)
第1頁(yè) / 共20頁(yè)
《數(shù)據(jù)庫(kù)系統(tǒng)》上機(jī)題,實(shí)驗(yàn)四:T_第2頁(yè)
第2頁(yè) / 共20頁(yè)
《數(shù)據(jù)庫(kù)系統(tǒng)》上機(jī)題,實(shí)驗(yàn)四:T_第3頁(yè)
第3頁(yè) / 共20頁(yè)

本資源只提供3頁(yè)預(yù)覽,全部文檔請(qǐng)下載后查看!喜歡就下載吧,查找使用更方便

20 積分

下載資源

資源描述:

《《數(shù)據(jù)庫(kù)系統(tǒng)》上機(jī)題,實(shí)驗(yàn)四:T》由會(huì)員分享,可在線閱讀,更多相關(guān)《《數(shù)據(jù)庫(kù)系統(tǒng)》上機(jī)題,實(shí)驗(yàn)四:T(20頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、實(shí)驗(yàn)四:T-SQL查詢、存儲(chǔ)過(guò)程、觸發(fā)器、完整性姓名:張浩 學(xué)號(hào):20082617 專業(yè):信息管理與信息系統(tǒng)班級(jí):1課程名稱:數(shù)據(jù)庫(kù)系統(tǒng)概論課程代碼:實(shí)驗(yàn)時(shí)間:2010年12月24日,2010年12月18日實(shí)驗(yàn)地點(diǎn):12號(hào)樓406室1. 實(shí)驗(yàn)特點(diǎn):類型:驗(yàn)證類別:專業(yè)基礎(chǔ)計(jì)劃學(xué)時(shí):4學(xué)時(shí) 每組人數(shù):1人2. 實(shí)驗(yàn)?zāi)康呐c要求:實(shí)驗(yàn)?zāi)康模?)熟練掌握局部變量、游標(biāo)的定義和使用2)熟練掌握存儲(chǔ)過(guò)程、觸發(fā)器的創(chuàng)建和使用3 )掌握數(shù)據(jù)庫(kù)完整性約束的定義和使用基本要求:1)掌握上述過(guò)程定義的一般格式3. 主要儀器設(shè)備:計(jì)算機(jī)+SQL Server 2000第一部分:T-SQL程序設(shè)計(jì)(1 ).如果3號(hào)課程

2、的平均成績(jī)?cè)?80分以上,則輸岀“ 3號(hào)課程成績(jī)良好”,否則輸岀“ 3號(hào)成績(jī)一般” if (select avg(grade) from sc where eno=3)80beginprint 3號(hào)成績(jī)良好endelsebeginprint 3號(hào)成績(jī)一般if Select -wg (grade) from sc where cna-5 : 80 begmprint V號(hào)成績(jī)良奸endJP妙煩氓STI.翌網(wǎng)格aS消息end 汁-:yr. “I,”蘭亠: 1 l .,提示信息(2 )計(jì)算并輸岀95003號(hào)學(xué)生的平均成績(jī),若無(wú)該生信息,則顯示“該生未選課”declare message varcha

3、r(200)if exists(select sno from sc where sc.s no=95003)beg in select avg(grade) from sc where sc.s no=95003 endpri nt message enddeclare Message varchar f200)aif ezists select sno frtym here sc. begin sele匚七 av? grade) froiiL sc where else begin s&t Message 該生未選諜 print message endvr=90) select sno,c

4、no ,grade from sc where sc.grade=90 elseset msg=沒(méi)有學(xué)生的成績(jī)?cè)?0以上pri nt msgdeclarevarchar(200aif ex 11: z i select grade from sc where select sno;, cnoj grade from sc where elseset snsg- 沒(méi)有學(xué)生的成績(jī)?cè)?0以上v1 ! sno crto grade195001 19295D02 290n冏格so消息張浩SOOB261710:00:002 行 行列(4).利用游標(biāo)逐行顯示student表中的記錄。declare curs

5、orvar cursorset cursorvar=cursor scroll dyn amic forselect* from stude nt ope n cursorvarfetch n ext from cursorvarwhile fetch_status=Obeg in fetch next from cursorvar end close cursorvar deallocate cursorvar(5).用自定義函數(shù)計(jì)算全體男生的平均年齡CREATE FUNCTION average(c num char(2) RETURNS int asbeg indeclare aver

6、intselect aver=(select avg(sage) from stude nt where ssex=c num group by ssex) retur n averendgodeclare aver1 in t,c num1 char(2)set c num 仁男select aver1=dbo.average (c num1) select aver1 as 全體男生的平均年齡CREATE FUNCTION averagfl (Acnun char C2) )a.| begin declare (Saver intselect Oaver- i seleut avg (sa

7、ge ret urn averendv全體男生的平均年齡1 GIU張;200&26171 0:00:00 i 行 各 11 ,列 I(6) .顯示course 表中課程名的前 2個(gè)字符。select left(c name, 2) from course order by eno(無(wú)列名n網(wǎng)格ami張浩2 0:00:00(7) .在一列中顯示 student中各元組的學(xué)號(hào)中的年級(jí),列名顯示為“年級(jí)”;另一列中顯示學(xué)號(hào)中的學(xué)生序列號(hào),列名顯示為“序號(hào)”。SELECT SUBSTRINGS no,1,2)年級(jí),SUBSTRINGS no, 3,LEN(s no)-1)序號(hào)FROM stude nt

8、ORDER BY snoSELECT SUBSTRIMG (sno, 1, 2)年ST, SUE STR: aFROM studentORDER BY sno.年級(jí)序號(hào)195001295002395003495004岡格圜消息;曲I加舒i張浩2008261710:00:002行 行 S 列1(8) .在選課表中顯示學(xué)號(hào)、課程號(hào),并根據(jù)成績(jī):0-59顯示“不合格”;60-79顯示“合格” ;80-89顯示良好” ;90-100 顯示優(yōu)秀?!?select sno,cno,grade=casewhe n grade=0 and grade=60 and grade=80 and grade=90

9、and grade=100then 優(yōu)秀endfrom scselect sno, cna=90 md grade =100 thg 優(yōu)香endfrom scvsnoeno grade1234595001 10 2950D1 31 295002 3tisaffn網(wǎng)榕團(tuán)消息|c?H4O6 SH4OB2TAdmtnistrator (54)張浩200026171 0:00:00 :5 存 行釦列 1第二部分:存儲(chǔ)過(guò)程(1 )創(chuàng)建一個(gè)為 worker表添加職工記錄的存儲(chǔ)過(guò)程AddworkerCREATE proc Addworker 職工號(hào) char(4),名姓 char(8),性別 char(2)

10、,岀生日期 datetime,黨員否char(2),參加工作 datetime, 部門號(hào) char (4)as in sert into workervalues( 職工號(hào),名姓,性別,岀生日期,黨員否,參加工作,部門號(hào));(2)創(chuàng)建一個(gè)存儲(chǔ)過(guò)程Delworker 刪除worker表中指定職工號(hào)的記錄create proc Delworker zhigonghao char(4) as delete from worker where 職工號(hào)=zhig on ghao;go(3)顯示存儲(chǔ)過(guò)程Delworker的定義信息(4)刪除存儲(chǔ)過(guò)程 Addworker 和Delworker。不要截圖dro

11、p procedure Addworkerdrop procedure Delworker(5 )創(chuàng)建并執(zhí)行以下存儲(chǔ)過(guò)程:a.從數(shù)據(jù)庫(kù)表中查詢,返回學(xué)生學(xué)號(hào)、姓名、課程名、成績(jī)create proc s_back as select stude nt.s no,sn ame,c name,grade from stude nt,sc,course where stude nt.s no=sc.s no and sc.c no=course.c nogoexec s backcreat e pracgb ackAasselect student, sno, snane, cnane. grade

12、from student、scj coursewhere student.sno=sc. sno and o=course. enoexec s_backV |snosnamecnaftegradeA |195001李勇數(shù)據(jù)庫(kù)02295001E5395001李勇信息系統(tǒng)E8495002劉辰90595002信息系統(tǒng)80V |13網(wǎng)格圍消息jH4067Udni imstrator 強(qiáng)浩 2003261710:00:005行行4列ib.從數(shù)據(jù)庫(kù)表中查詢指定學(xué)號(hào)的學(xué)生學(xué)號(hào),姓名、班級(jí),該存儲(chǔ)過(guò)程接受與傳遞參數(shù),精確匹配的 值create proc r_backa char(10)as select s

13、no,sn ame from stude nt where sno=a go exec r back95003create proc r_backaa char(10)as select sno, sname from student wheSxec r back 5003尸_v-J11L二 Lil ieqsnaiiiE1*95003王敏*昌岡格_團(tuán)消息:(張92008261710:00:001 行行 5,列曲第三部分:觸發(fā)器在表depart上創(chuàng)建一個(gè)觸發(fā)器 depart_update ,當(dāng)更改部門號(hào)時(shí)同步更改worker表中對(duì)應(yīng)的部門號(hào) create trigger depart_updat

14、eon departfor updateas update workerset 咅部門號(hào)=(select 咅部門號(hào) from inserted)where worker.咅咅門號(hào)=(select咅咅門號(hào) from deleted)在表worker上創(chuàng)建一個(gè)觸發(fā)器worker_delete,當(dāng)刪除職工記錄時(shí)同步刪除salary表中對(duì)應(yīng)的職工記錄 create trigger worker_delete on worker for deleteas delete from salarywhere 職工號(hào)=(select 職工號(hào) from deleted)刪除觸發(fā)器depart_updatedrop

15、 trigger depart_update刪除觸發(fā)器worker_deletedrop trigger worker_delete(5)在數(shù)據(jù)庫(kù)中創(chuàng)建一個(gè)觸發(fā)器,向選課表添加一條紀(jì)錄時(shí),檢查該紀(jì)錄的學(xué)號(hào)在學(xué)生表中是否存在,檢查該紀(jì)錄的課程號(hào)在課程表中是否存在,若其中有一項(xiàng)為否,則拒絕添加操作,并顯示“違反數(shù) 據(jù)一致性”提示信息。例如:向選課表中添加一條記錄(95007,2,99),說(shuō)明95009不在student表中create trigger sc_in sert on sc for in sert asdeclare xuehao char(10),keche nghao char(10

16、),che ngji smalli nt,a,bselect xuehao=s no, keche nghao=c no from in sertedset a= select sno from stude nt where sno=xuehaoset b= select eno from course where cno=keche nghao if exists(a and b)beig ninsert into sc values(xuehao,keche nghao,che ngji)endrollback transaction print違反數(shù)據(jù)一致性in sert into sc

17、 values(95007,2,99)第四部分:數(shù)據(jù)庫(kù)完整性1、實(shí)施worker表的“性別”字段默認(rèn)值為“男”的約束alter table workeradd constraint con1 default 男for 性另 Vgo例如:insert worker(職工號(hào))values(111)select * from worker2實(shí)施salary表的“工資”字段值在09999的約束create table salary(職工號(hào)char(4),姓名 char(8),日期 datetime,工資 decimal not null check( 工資 =0 and 工資 =9999),prima

18、ry key(職工號(hào),日期)3實(shí)施depart表的“部門號(hào)”字段值唯一的非聚集索引的約束create table depart(部門號(hào) char(4) unique,部門名char(10)Go4、為worker表建立外鍵“部門號(hào)”,參考表depart的“部門號(hào)”列。Create table worker(職工號(hào) char(4) primary key,姓名 char(8),性別 char(2),岀生日期 datetime,黨員否char(2),參加工作 datetime,部門號(hào)char(4),create rule worker_ruleas 性別like 男or 性別 goexec sp_b

19、 in drule worker_rule, worker.Go6、刪除1小題所建立的約束Alter table worker drop con stra int con17、刪除2小題所建立的約束。Alter table salary drop 工資 check8、刪除3小題所建立的約束Alter table depart drop uni que9、刪除4小題所建立的約束Alter table worker drop foreig n key10、解除5小題所建立的綁定并刪除規(guī)則if exists (select n ame from sysobjects where n ame = wo

20、rker_rule and type = R)like 女性別sexbegindrop rule worker_rule倚窗遠(yuǎn)眺,目光目光盡處必有一座山,那影影綽綽的 黛綠色的影,是春天的顏色。周遭流嵐升騰,沒(méi)露出那真實(shí)的面孔。面對(duì)那流轉(zhuǎn)的 薄霧,我會(huì)幻想,那里有一個(gè)世外桃源。在天階夜色涼如水的夏夜,我會(huì)靜靜地, 靜靜地,等待一場(chǎng)流星雨的來(lái)臨許下一個(gè)愿望,不乞求去實(shí)現(xiàn),至少,曾經(jīng),有那么一刻,我那還未枯萎的, 青春的,詩(shī)意的心,在我最美的年華里,同星空做了一次靈魂的交流秋日里,陽(yáng)光并不刺眼,天空是一碧如洗的藍(lán),點(diǎn)綴著飄逸的流云。偶爾,一 片飛舞的落葉,會(huì)飄到我的窗前。斑駁的印跡里,攜刻著深秋的顏色。在一個(gè)落雪 的晨,這紛紛揚(yáng)揚(yáng)的雪,飄落著一如千年前的潔白。窗外,是未被污染的銀白色世 界。我會(huì)去迎接,這人間的圣潔。在這流轉(zhuǎn)的歲月里,有著流轉(zhuǎn)的四季,還有一顆 流轉(zhuǎn)的心,亙古不變的心。

展開閱讀全文
溫馨提示:
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. 裝配圖網(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ì)自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!