《數(shù)據(jù)庫(kù)原理與應(yīng)用》實(shí)驗(yàn)報(bào)告三及答案.doc
《《數(shù)據(jù)庫(kù)原理與應(yīng)用》實(shí)驗(yàn)報(bào)告三及答案.doc》由會(huì)員分享,可在線(xiàn)閱讀,更多相關(guān)《《數(shù)據(jù)庫(kù)原理與應(yīng)用》實(shí)驗(yàn)報(bào)告三及答案.doc(4頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
廣東金融學(xué)院實(shí)驗(yàn)報(bào)告 課程名稱(chēng):數(shù)據(jù)庫(kù)原理與應(yīng)用 實(shí)驗(yàn)編號(hào) 及實(shí)驗(yàn)名稱(chēng) 實(shí)驗(yàn)三 數(shù)據(jù)庫(kù)高級(jí)應(yīng)用實(shí)驗(yàn) 系 別 計(jì)科系 姓 名 學(xué) 號(hào) 班 級(jí) 實(shí)驗(yàn)地點(diǎn) 新電1101 實(shí)驗(yàn)日期 2014 年05 月14 日 實(shí)驗(yàn)時(shí)數(shù) 8 指導(dǎo)教師 同組其他成員 無(wú) 成 績(jī) 一、實(shí)驗(yàn)?zāi)康募耙? 1、 掌握SQL Server存儲(chǔ)過(guò)程的定義和使用。 2、 掌握SQL Server觸發(fā)器的定義和使用。 二、實(shí)驗(yàn)環(huán)境及相關(guān)情況(包含使用軟件、實(shí)驗(yàn)設(shè)備、主要儀器及材料等) 1、計(jì)算機(jī)操作系統(tǒng)要求在windows XP以上。 2、并要求SQL Server 軟件2000以后版本。 三、實(shí)驗(yàn)內(nèi)容及要求 利用實(shí)驗(yàn)指導(dǎo)書(shū)中的關(guān)系數(shù)據(jù)庫(kù)完成下面題目: 1、說(shuō)明下面代碼段的功能 SELECT tname as ‘姓名’,tSex as ‘性別’, case trank when ‘教授’ then ‘高級(jí)職稱(chēng)’ when ‘講師’ then ‘中級(jí)職稱(chēng)’ else ‘初級(jí)職稱(chēng)’ end from teacher 答:在教師表中選取姓名和性別兩列,并給每個(gè)教師分等級(jí); 2、完成下面代碼的書(shū)寫(xiě) 計(jì)算student_course表的平時(shí)分?jǐn)?shù)列的平均值。如果小于80,則分?jǐn)?shù)增加其值的5%;如果分?jǐn)?shù)的最高值超過(guò)95,則終止該操作。在以下代碼劃線(xiàn)處填入適當(dāng)?shù)膬?nèi)容以完成上述功能。 WHILE (SELECT____avg________(NormalMark) FROM student_course)<80 BEGIN if (SELECT MAX(NormalMark) FROM student_course)>____95_____ BREAK ELSE ___ UPDATE student_course SET NormalMark = NormalMark *1.05 END 注意:實(shí)驗(yàn)前要先給所有同學(xué)的NormalMark賦一個(gè)初值,比如50。 3、根據(jù)要求完成下列題目 1) 編寫(xiě)一個(gè)觸發(fā)器:在添加期末成績(jī)信息時(shí),利用平時(shí)成績(jī)、其中成績(jī)和期末成績(jī)來(lái)計(jì)算成績(jī)總評(píng)。如果沒(méi)有期中成績(jī),則平時(shí)和期末成績(jī)比重為2:8,如果有期中成績(jī),則平時(shí)、期中、期末三者比重為2:2:6。 答:在student_course表中添加一列summark期末成績(jī),而exammark作為期中成績(jī),mark作為期末成績(jī); create trigger get_summark2 on student_course for insert as Declare @sno varchar(10),@ccno char(10) Declare @nmark int Declare @emark int Declare @fmark int Select @nmark=NormalMark,@emark=exammark,@fmark=mark,@sno=sno,@ccno=ccno from student_course if not exists(select exammark from student_course where @sno=sNO and @ccno=ccNO ) begin update student_course set sumMark = convert(int,(@nmark * 0.2) + (@fmark * 0.8)) end else begin update student_course set sumMark = convert(int,(@nmark * 0.2) + (@eMark * 0.2)+ (@fmark * 0.6)) end 2)創(chuàng)建一個(gè)帶輸入?yún)?shù)和輸出參數(shù)的存儲(chǔ)過(guò)程,要求實(shí)現(xiàn)如下功能:輸入學(xué)生學(xué)號(hào),然后輸出學(xué)生的選課門(mén)數(shù)、平均分以及所選學(xué)分。 答: create procedure c ( @sno char(10), @cnocount int output, @avgmark float output, @sumcredit int output) As begin select @cnocount=count(*),@avgmark=avg(mark),@sumcredit=sum(credit) From student_course sc,course_class cc ,student s where sc.sno=s.sno and cc.ccno=sc.ccno group by s.sNO,sname end 3)調(diào)用2小題中的存儲(chǔ)過(guò)程,并分別獲得輸出相關(guān)信息。 答: Declare @ccount int Declare @smark float Declare @scredit int Exec c 081220101 , @ccount output, @smark output, @scredit output Select 081220101 as 學(xué)生號(hào), @ccount as 選課門(mén)數(shù), @smark as 平均分, @scredit as 所選學(xué)分 結(jié)果: 警告: 聚合或其他SET 操作消除了Null 值。 學(xué)生號(hào) 選課門(mén)數(shù) 平均分 所選學(xué)分 --------- ----------- ---------------------- ----------- 081220101 6 69 22 (1 行受影響) 4、思考題 1)存儲(chǔ)過(guò)程和觸發(fā)器的異同點(diǎn)? 答: 觸發(fā)器與存儲(chǔ)過(guò)程的區(qū)別: 觸發(fā)器與存儲(chǔ)過(guò)程的主要區(qū)別在于觸發(fā)器的運(yùn)行方式。存儲(chǔ)過(guò)程必須有用戶(hù)、應(yīng)用程序或者觸發(fā)器來(lái)顯示的調(diào)用并執(zhí)行,而觸發(fā)器是當(dāng)特定時(shí)間出現(xiàn)的時(shí)候,自動(dòng)執(zhí)行或者激活的,與連接用數(shù)據(jù)庫(kù)中的用戶(hù)、或者應(yīng)用程序無(wú)關(guān)。當(dāng)一行被插入、更新或者刪除時(shí)觸發(fā)器才執(zhí)行,同時(shí)還取決于觸發(fā)器是怎樣創(chuàng)建的,當(dāng)UPDATE發(fā)生時(shí)使用一個(gè)更新觸發(fā)器,當(dāng)INSERT發(fā)生時(shí)使用一個(gè)插入觸發(fā)器,當(dāng)DELETE發(fā)生時(shí)使用一個(gè)刪除觸發(fā)器。 觸發(fā)器與存儲(chǔ)過(guò)程的相同: 觸發(fā)器與存儲(chǔ)過(guò)程非常相似,都是SQL語(yǔ)句集 五、實(shí)驗(yàn)總結(jié)(包括心得體會(huì)、問(wèn)題回答及實(shí)驗(yàn)改進(jìn)意見(jiàn))通過(guò)本次試驗(yàn),基本掌握SQL Server存儲(chǔ)過(guò)程的定義和使用,也掌握SQL Server觸發(fā)器的定義和使用。 六、教師評(píng)語(yǔ) 1、完成所有的實(shí)驗(yàn)內(nèi)容,實(shí)驗(yàn)步驟和實(shí)驗(yàn)結(jié)果基本正確。 2、至少完成主要的實(shí)驗(yàn)內(nèi)容,實(shí)驗(yàn)步驟和實(shí)驗(yàn)結(jié)果基本正確。 3、僅完成部分的實(shí)驗(yàn)內(nèi)容,實(shí)驗(yàn)步驟和結(jié)果基本正確。 4、雖然完成了主要實(shí)驗(yàn)內(nèi)容,但是實(shí)驗(yàn)步驟和結(jié)果存在多處重大錯(cuò)誤。 5、未能很好地完成規(guī)定的實(shí)驗(yàn)內(nèi)容,且實(shí)驗(yàn)步驟和結(jié)果基本不正確。 6、其它: 評(píng)定等級(jí):優(yōu)秀 良好 中等 及格 不及格 教師簽名: 年 月 日 第 3 頁(yè) 共2 頁(yè)- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來(lái)的問(wèn)題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁(yè)顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開(kāi)word文檔。
- 特殊限制:
部分文檔作品中含有的國(guó)旗、國(guó)徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 數(shù)據(jù)庫(kù)原理與應(yīng)用 數(shù)據(jù)庫(kù) 原理 應(yīng)用 實(shí)驗(yàn) 報(bào)告 答案
鏈接地址:http://italysoccerbets.com/p-9076596.html