資源描述:
《實(shí)驗(yàn)報(bào)告8 創(chuàng)建和使用存儲(chǔ)過程》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、山西大學(xué)計(jì)算機(jī)與信息技術(shù)學(xué)院實(shí)驗(yàn)報(bào)告姓名許小珍學(xué)號(hào)2010242097專業(yè)班級(jí)軟件一班課程名稱數(shù)據(jù)庫實(shí)驗(yàn)日期2012.05.22成績(jī)指導(dǎo)教師龐繼芳批改日期實(shí)驗(yàn)名稱創(chuàng)建和使用存儲(chǔ)過程一、實(shí)驗(yàn)?zāi)康模?1)了解存儲(chǔ)過程的概念和作用;(2)掌握存儲(chǔ)過程的創(chuàng)建、執(zhí)行以及查看、修改和刪除.二、實(shí)驗(yàn)內(nèi)容:(1)存儲(chǔ)過程的創(chuàng)建與執(zhí)行;(2)存儲(chǔ)過程的查看、修改與刪除.三、實(shí)驗(yàn)步驟:1.使用SQL命令窗口創(chuàng)建存儲(chǔ)過程(1)打開SQLServerManagementStudio,選擇“對(duì)象資源管理器”中的“學(xué)生數(shù)據(jù)庫”,然后用鼠標(biāo)
2、單擊“新建查詢”按鈕,打開SQL命令窗口,在可編輯區(qū)輸入如下代碼,單擊“執(zhí)行”按鈕即可創(chuàng)建存儲(chǔ)過程,1.為student表創(chuàng)建查詢所有信息的存儲(chǔ)過程,不帶參數(shù)createprocedurestu1asselect*fromstudentexecstu12.創(chuàng)建一個(gè)不帶參數(shù)的存儲(chǔ)過程,從Course中選擇所有“Grade>85”的記錄,輸入如下語句,單擊“執(zhí)行”,createprocgetstudent1asselect*fromscwheregrade>'85'execgetstudent13.創(chuàng)建一個(gè)帶參數(shù)的
3、存儲(chǔ)過程,從Course中選擇Grade介于65—89之間的記錄,輸入如下語句,單擊“執(zhí)行”,createprocstudent2@minint,@maxintasselect*fromscwheregradebetween@minand@maxstudent265,89declare@minint,@maxintexecstudent265,894.創(chuàng)建與執(zhí)行帶輸入、輸出參數(shù)的存儲(chǔ)過程,實(shí)現(xiàn)顯示“Course”中給定學(xué)號(hào)的信息,并輸出“Course”中該學(xué)號(hào)的學(xué)生所選課程中的最高分?jǐn)?shù)和最低分?jǐn)?shù),createp
4、rocstudent3@snovarchar(20),@maxintoutput,@minintoutputasselect*fromscwheresno=@snoselect@max=max(grade)fromscwheresno=@snoselect@min=min(grade)fromscwheresno=@snodeclare@x1int,@x2intexecstudent3'200215122',@x1output,@x2outputselect@x1as最高分,@x2as最低分2.查看存儲(chǔ)過程(1
5、)使用MircrosoftSQLServer2005ManagementStudio查看用戶創(chuàng)建存儲(chǔ)過程。在使用SQLServerManagementStudio中,展開指定的服務(wù)器和數(shù)據(jù)庫,選擇展開“可編程性”│“存儲(chǔ)過程”節(jié)點(diǎn),然后在要查看的存儲(chǔ)過程名稱上單擊鼠標(biāo)右鍵。從彈出的快捷菜單中選擇“編寫存儲(chǔ)過程腳本為”│“CREATE到”│“新查詢編輯器”窗口命令,即可看到存儲(chǔ)過程的源代碼:(2)使用系統(tǒng)存儲(chǔ)過程來查看用戶創(chuàng)建的存儲(chǔ)過程可供使用的系統(tǒng)存儲(chǔ)過程及語法格式如下:·sp_help,用于顯示存儲(chǔ)過程的參數(shù)
6、機(jī)器數(shù)據(jù)類型,其語法為:sp_help[[@objname=]name],參數(shù)name為要查看的存儲(chǔ)過程的名稱?!p_helptext,用于顯示存儲(chǔ)過程的代碼,其語法為:sp_helptext[[@objname=]name],參數(shù)name為要查看的存儲(chǔ)過程的名稱?!p_depends,用于顯示和存儲(chǔ)過程相關(guān)的數(shù)據(jù)庫對(duì)象,其語法為:sp_depends[[@objname=]’object’,參數(shù)object為要查看依賴關(guān)系的存儲(chǔ)過程的名稱?!p_stored_procedurse,用于返回當(dāng)前數(shù)據(jù)庫中的
7、存儲(chǔ)過程列表,其語法為:sp_stored_procedurse[[@sp_name=]’name’][,[@sp_owner=]’owner’,][,[@sp_qualifier=]’qualifier’]其中[@sp_name=]’name’用于制定返回目錄信息的過程名;[@sp_owner=]’owner’用于指定存儲(chǔ)過程的所有者的名稱;[@sp_qualifier=]’qualifier’用于指定過程限定符的名稱例1:執(zhí)行sp_help例2:執(zhí)行sp_stored_procedures@sp_owner
8、='dbo'例3:執(zhí)行sp_dependsSC3.修改存儲(chǔ)過程存儲(chǔ)過程可以根據(jù)用戶的要求或基表定義的改變而改變??梢允褂肁LTERPROCEDURE語句修改已經(jīng)存在的存儲(chǔ)過程。修改存儲(chǔ)過程與刪除和重建存儲(chǔ)過程不同,其特點(diǎn)是保持存儲(chǔ)過程的權(quán)限不發(fā)生變化,其主要語法格式如下:ALTERPROCEDUREprocedure_name[;number][{parameterdata_type}