更新時(shí)間:2021-06-21 14:15:17作者:admin2
實(shí)驗(yàn)六存儲(chǔ)過程和觸發(fā)器一、目的與要求1.掌握編寫數(shù)據(jù)庫(kù)存儲(chǔ)過程的方法。2.掌握建立數(shù)據(jù)庫(kù)觸發(fā)器的方法,通過實(shí)驗(yàn)觀察觸發(fā)器的作用和觸發(fā)條件設(shè)置等相關(guān)操作。二、實(shí)驗(yàn)準(zhǔn)備1.了解編寫存儲(chǔ)過程和調(diào)用的T-SQL語(yǔ)法;2.了解觸發(fā)器的作用;3.了解編寫觸發(fā)器的T-SQL語(yǔ)法。三、實(shí)驗(yàn)內(nèi)容(一)存儲(chǔ)過程在studentdb數(shù)據(jù)庫(kù)中建立存儲(chǔ)過程getPractice,查詢指定院系(名稱)(作為存儲(chǔ)過程的輸入?yún)?shù))中參與“實(shí)踐”課程學(xué)習(xí)的所有學(xué)生學(xué)號(hào)、姓名、所學(xué)課程編號(hào)和課程名稱,若院系不存在,返回提示信息。提示:D_Info表中存儲(chǔ)了院系代碼D_ID,而St_Info表中學(xué)號(hào)字段St_ID的前兩位與之對(duì)應(yīng),則D_Info表與St_Info表之間的聯(lián)系通過這兩個(gè)字段的運(yùn)算構(gòu)成連接條件。1.分別執(zhí)行存儲(chǔ)過程getPractice,查詢“法學(xué)院”和“材料科學(xué)與工程學(xué)院”的學(xué)生中參與“實(shí)踐”課程的所有學(xué)生學(xué)號(hào)、姓名、所學(xué)課程編號(hào)和課程名稱。create procedure getPractice@D_Name varchar(30)outputasbeginif not exists(select *from D_Infowhere D_Name= @D_Name)print '對(duì)不起,該院系不存在'elseselect st_info.St_ID,C_Info.C_No,C_Namefrom s_c_info inner join st_info on st_info.St_ID=s_c_info.st_idinner join C_Info on s_c_info.c_no=C_Info.C_Nowhere st_info.St_ID in( select St_ID)觸發(fā)器名為create