[計(jì)算機(jī)]使用存儲(chǔ)過(guò)程實(shí)現(xiàn)進(jìn)銷(xiāo)存系統(tǒng)的業(yè)務(wù)邏輯ppt課件_第1頁(yè)
[計(jì)算機(jī)]使用存儲(chǔ)過(guò)程實(shí)現(xiàn)進(jìn)銷(xiāo)存系統(tǒng)的業(yè)務(wù)邏輯ppt課件_第2頁(yè)
[計(jì)算機(jī)]使用存儲(chǔ)過(guò)程實(shí)現(xiàn)進(jìn)銷(xiāo)存系統(tǒng)的業(yè)務(wù)邏輯ppt課件_第3頁(yè)
[計(jì)算機(jī)]使用存儲(chǔ)過(guò)程實(shí)現(xiàn)進(jìn)銷(xiāo)存系統(tǒng)的業(yè)務(wù)邏輯ppt課件_第4頁(yè)
[計(jì)算機(jī)]使用存儲(chǔ)過(guò)程實(shí)現(xiàn)進(jìn)銷(xiāo)存系統(tǒng)的業(yè)務(wù)邏輯ppt課件_第5頁(yè)
已閱讀5頁(yè),還剩25頁(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、第六章 使用存儲(chǔ)過(guò)程進(jìn)步進(jìn)銷(xiāo)存系統(tǒng)的執(zhí)行效率 終極目的:能根據(jù)需要靈敏、快速地創(chuàng)立存儲(chǔ)過(guò)程 計(jì)算機(jī)應(yīng)用教研室本次課的學(xué)習(xí)目的學(xué)習(xí)目的1.1.理解存儲(chǔ)過(guò)程理解存儲(chǔ)過(guò)程2.2.掌握存儲(chǔ)過(guò)程的定義與使用掌握存儲(chǔ)過(guò)程的定義與使用學(xué)習(xí)重點(diǎn):掌握帶輸入?yún)?shù)和輸出參數(shù)的存儲(chǔ)過(guò)程的掌握帶輸入?yún)?shù)和輸出參數(shù)的存儲(chǔ)過(guò)程的使用使用6.1 工作任務(wù)任務(wù):待審核入出庫(kù)單項(xiàng)選擇擇功能的選擇描繪: 此功能從沒(méi)有審核的入庫(kù)單的匯總數(shù)據(jù)中選擇需要審核的入出庫(kù)單,重點(diǎn)是此功能提供了通用查詢(xún)的實(shí)現(xiàn)方式6.1 工作任務(wù)6.2 存儲(chǔ)過(guò)程的優(yōu)點(diǎn)可以提供對(duì)數(shù)據(jù)的輕松訪問(wèn),客戶端不需要知道復(fù)雜的數(shù)據(jù)構(gòu)造或業(yè)務(wù)邏輯過(guò)程,只要把查詢(xún)指令通過(guò)存儲(chǔ)

2、過(guò)程發(fā)給效勞器,效勞就把需要的數(shù)據(jù)返回給用戶.利用效勞器強(qiáng)大的計(jì)算才能和速度,防止了把大量的數(shù)據(jù)從效勞器下載到客戶端,減少了網(wǎng)絡(luò)上傳輸量效勞器只用把計(jì)算結(jié)果給客戶端,可進(jìn)步客戶端工作的效率. 6.3 存儲(chǔ)過(guò)程的分類(lèi)大體分為以下兩類(lèi):1.1.系統(tǒng)存儲(chǔ)過(guò)程系統(tǒng)存儲(chǔ)過(guò)程. .sql server有大量的系統(tǒng)存儲(chǔ)過(guò)程,用于管理sql server并顯示有關(guān)數(shù)據(jù)庫(kù)和用戶的信息.以sp_開(kāi)關(guān),用戶一般不用sp_開(kāi)頭的存儲(chǔ)過(guò)程.擴(kuò)展存儲(chǔ)過(guò)程:xp_,如xp_cmdshell2.2.用戶自定義存儲(chǔ)過(guò)程用戶自定義存儲(chǔ)過(guò)程. .用于解決用于的需要而建立的存儲(chǔ)過(guò)程.按返回?cái)?shù)據(jù)類(lèi)型分為兩類(lèi):1.1.類(lèi)似于類(lèi)似于sel

3、ectselect查詢(xún)查詢(xún), ,用于檢索數(shù)據(jù)用于檢索數(shù)據(jù), ,檢索到的數(shù)據(jù)可以以結(jié)檢索到的數(shù)據(jù)可以以結(jié)果集的形式返回給客戶端果集的形式返回給客戶端. .2.2.通過(guò)輸出參數(shù)返回信息或不返回信息通過(guò)輸出參數(shù)返回信息或不返回信息, ,或只執(zhí)行一個(gè)動(dòng)作或只執(zhí)行一個(gè)動(dòng)作. .6.4 存儲(chǔ)過(guò)程的定義語(yǔ)法格式Create Procedure|Proc 存儲(chǔ)過(guò)程名稱(chēng)參數(shù)名稱(chēng) 參數(shù)類(lèi)型 output,參數(shù)名稱(chēng)1 參數(shù)類(lèi)型 output.As T-SQL語(yǔ)句實(shí)現(xiàn)的業(yè)務(wù)邏輯6.5 無(wú)參數(shù)存儲(chǔ)過(guò)程的創(chuàng)立語(yǔ)法Create Proc 存儲(chǔ)過(guò)程名稱(chēng) asT-SQL語(yǔ)句6.5 無(wú)參數(shù)存儲(chǔ)過(guò)程的創(chuàng)立【例】定義存儲(chǔ)過(guò)程up_G

4、etDay輸出當(dāng)前日期所在月份的第一天和最后一天create proc up_getdayasdeclare days int, st datetime, ed datetime select days=daygetdate -1select st=dateaddday,days*-1,getdateselect ed=dateaddday,-1,dateaddmonth,1,stselect st as StDate,ed as EdDate6.5 無(wú)參數(shù)存儲(chǔ)過(guò)程的調(diào)用1、Execute存儲(chǔ)過(guò)程名稱(chēng)2、Exec 存儲(chǔ)過(guò)程名稱(chēng)3、存儲(chǔ)過(guò)程名稱(chēng)Execute up_getdayExec up_g

5、etdayUp_getday6.6 有參數(shù)存儲(chǔ)過(guò)程的定義語(yǔ)法格式Create Procedure|Proc 存儲(chǔ)過(guò)程名稱(chēng)參數(shù)名稱(chēng) 參數(shù)類(lèi)型 ,參數(shù)名稱(chēng)1 參數(shù)類(lèi)型 .As T-SQL語(yǔ)句實(shí)現(xiàn)的業(yè)務(wù)邏輯6.6 有參數(shù)存儲(chǔ)過(guò)程的定義【例】定義存儲(chǔ)過(guò)程up_GetEndDay,輸入?yún)?shù)年月YYYYMM,輸入?yún)?shù)名稱(chēng)ym int,輸出參數(shù)所在月份的最后一天Create proc up_getEndDayym intasdeclare days int, st datetime, ed datetime select st=convertvarchar8,ym+01select days=dayst -

6、1select ed=dateaddday,-1,dateaddmonth,1,stselect ed as ed6.6 有參數(shù)存儲(chǔ)過(guò)程的定義【例】定義存儲(chǔ)過(guò)程up_StudentQuery ,輸入?yún)?shù)cno,Sno,Sname,檢索學(xué)生課程成績(jī)信息,輸出學(xué)號(hào),姓名,課程編號(hào),課程名稱(chēng),成績(jī)6.6 有參數(shù)存儲(chǔ)過(guò)程的定義6.6 有參數(shù)存儲(chǔ)過(guò)程的定義Create proc up_studentquery cno int ,sno varchar10,sname varchar10Asselect c.學(xué)號(hào),c.姓名,a.課程編號(hào),a.課程名稱(chēng),b.成績(jī)from 課程 a inner join 學(xué)生

7、成績(jī) b on a.課程編號(hào)=b.課程編號(hào)join 學(xué)生 c on b.學(xué)號(hào)=c.學(xué)號(hào)where a.課程編號(hào)=cno or cno=0 and c.學(xué)號(hào)=sno or sno= and c.姓名=sname or sname=6.6 有參數(shù)存儲(chǔ)過(guò)程的調(diào)用Exec 存儲(chǔ)過(guò)程名 參數(shù)值,參數(shù)值1。必須按參數(shù)聲明順序輸入?yún)?shù)值Exec 存儲(chǔ)過(guò)程名 參數(shù)名=參數(shù)值, 參數(shù)名=參數(shù)值??刹话磪?shù)聲明順序輸入?yún)?shù)值Up_getEndDay 202020Exec Up_getEndDay 202020Exec Up_getEndDay ym=202020Exec up_studentquery Sno=

8、,cno=0,sname=6.7 帶參數(shù)的存儲(chǔ)過(guò)程的定義語(yǔ)法格式Create Procedure|Proc 存儲(chǔ)過(guò)程名稱(chēng)參數(shù)名稱(chēng) 參數(shù)類(lèi)型 output,參數(shù)名稱(chēng)1 參數(shù)類(lèi)型 output.As T-SQL語(yǔ)句實(shí)現(xiàn)的業(yè)務(wù)邏輯6.7 帶參數(shù)的存儲(chǔ)過(guò)程的定義 什么時(shí)候用output 參數(shù)?當(dāng)當(dāng)select select 語(yǔ)句返回一個(gè)值語(yǔ)句返回一個(gè)值而不是一個(gè)值集而不是一個(gè)值集時(shí)時(shí), ,可以用可以用output output 參數(shù)來(lái)返回值參數(shù)來(lái)返回值. .【例】使用output創(chuàng)立一個(gè)存儲(chǔ)過(guò)程CREATE PROCEDURE do_insert ASINSERT INTO 學(xué)生 VALUES0912

9、01, 陶偉,男, 1359444, ;再創(chuàng)立一個(gè)存儲(chǔ)過(guò)程CREATE PROCEDURE do_action X char2, STR CHAR8 OUTPUT ASBEGIN EXEC do_insertIF X=男BEGINUPDATE 學(xué)生 SET 姓名=劉英, 性別=女 WHERE 學(xué)號(hào)=091201SET STR=修改成功ENDELSEIF X=女BEGINDELETE FROM 學(xué)生 WHERE 學(xué)號(hào)=091201SET STR=刪除成功ENDEND調(diào)用和輸出DECLARE str char8EXEC do_action 男, str OUTPUTSELECT str;5.加密的

10、存儲(chǔ)過(guò)程if exists select name from sysobjectswhere name = encrypt_this and type = pdrop procedure encrypt_thisgocreate procedure encrypt_this with encryptionasselect * from xsgo6.注意:一般的存儲(chǔ)過(guò)程在創(chuàng)立后一般的存儲(chǔ)過(guò)程在創(chuàng)立后, ,可利用可利用sp_helptextsp_helptext進(jìn)展查看創(chuàng)立的命令進(jìn)展查看創(chuàng)立的命令. .做為一個(gè)加密存儲(chǔ)過(guò)程做為一個(gè)加密存儲(chǔ)過(guò)程, ,利用該命令的結(jié)果為利用該命令的結(jié)果為: :也可以直

11、接在查詢(xún)分析器中對(duì)存儲(chǔ)過(guò)程進(jìn)展編也可以直接在查詢(xún)分析器中對(duì)存儲(chǔ)過(guò)程進(jìn)展編輯輯: :修改存儲(chǔ)過(guò)程1.界面2.命令 alter不返回值的存儲(chǔ)過(guò)程公司進(jìn)貨時(shí),讓庫(kù)存表中的數(shù)量自動(dòng)進(jìn)展增加.庫(kù)存表庫(kù)存表貨物編號(hào)貨物編號(hào), ,貨物名稱(chēng)貨物名稱(chēng), ,貨物數(shù)量貨物數(shù)量creaet proc ccreaet proc c1 char1 char2020,1 float,1 floatasasupdate update 庫(kù)存表庫(kù)存表set set 貨物數(shù)量貨物數(shù)量= =貨物數(shù)量貨物數(shù)量+1+1where where 貨物編號(hào)貨物編號(hào)= 1= 1 刪除存儲(chǔ)過(guò)程根本語(yǔ)句格式刪除存儲(chǔ)過(guò)程DROP PROCEDURE 存儲(chǔ)過(guò)程名存儲(chǔ)過(guò)程名例例:刪除上面所建存儲(chǔ)過(guò)程刪除上面所建存儲(chǔ)過(guò)程encrypt_this Drop procedure encrypt_this 常用系統(tǒng)存儲(chǔ)過(guò)程sp_helpsp_helpsp_renamesp_rename存儲(chǔ)過(guò)程sp_help顯示存儲(chǔ)過(guò)程的參數(shù)及其數(shù)據(jù)類(lèi)型 根本語(yǔ)句格式返回sp_help objname= name存儲(chǔ)過(guò)程的名稱(chēng)

溫馨提示

  • 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)論