濮阳杆衣贸易有限公司

主頁 > 知識(shí)庫 > SQL Server 存儲(chǔ)過程解析

SQL Server 存儲(chǔ)過程解析

熱門標(biāo)簽:廣東防封卡外呼系統(tǒng)原理是什么 地圖標(biāo)注牌 分享百度地圖標(biāo)注多個(gè)位置 湖南電腦外呼系統(tǒng)平臺(tái) 知名電銷機(jī)器人價(jià)格 長(zhǎng)沙智能外呼系統(tǒng) 電銷機(jī)器人公司 需要哪些牌照 菏澤語音電銷機(jī)器人加盟公司 外呼系統(tǒng)改進(jìn)
存儲(chǔ)過程功能的優(yōu)點(diǎn)

  為什么要使用存儲(chǔ)過程?以下是存儲(chǔ)過程技術(shù)的幾大主要優(yōu)點(diǎn):

  1.   預(yù)編譯執(zhí)行程序。SQL Server只需要對(duì)每一個(gè)存儲(chǔ)過程進(jìn)行一次編譯,然后就可以重復(fù)使用執(zhí)行計(jì)劃。這個(gè)特點(diǎn)通過重復(fù)調(diào)用存儲(chǔ)程序極大地提高了程序的性能。
  2.   縮短客戶端/服務(wù)器之間的信息傳輸量。如果你的工作環(huán)境帶寬有限,那么存儲(chǔ)過程技術(shù)肯定能夠滿足你,因?yàn)樗軌虬研枰獋鬏數(shù)拈L(zhǎng)的SQL查詢縮短成一行。
  3.   有效重復(fù)使用代碼和編程。存儲(chǔ)過程可以為多個(gè)用戶所使用,也可以用于多個(gè)客戶程序。這樣可以減少程序開發(fā)周期的時(shí)間。
  4.   增強(qiáng)安全性控制??梢栽试S用戶單獨(dú)執(zhí)行存儲(chǔ)過程,而不給于其訪問表格的權(quán)限。

  結(jié)構(gòu)

  存儲(chǔ)過程的結(jié)構(gòu)跟其他編程語言非常相似。存儲(chǔ)過程接受輸入?yún)?shù)形式的數(shù)據(jù)。這些輸入?yún)?shù)在執(zhí)行系列語句的時(shí)候被運(yùn)用并生成結(jié)果。結(jié)果在通過使用記錄集、輸出參數(shù)和返回代碼返回。聽起來似乎很復(fù)雜,實(shí)際上存儲(chǔ)程序非常簡(jiǎn)單。

  實(shí)例

  假設(shè)我們有如下名為Inventory的表格,表格里的數(shù)據(jù)需要實(shí)時(shí)更新,倉庫經(jīng)理會(huì)不停地檢查倉庫里的貨存數(shù)量和可供發(fā)貨的貨存數(shù)量。以前,每一個(gè)地區(qū)的倉庫經(jīng)理都會(huì)進(jìn)行如下查詢:

 

以下是引用片段:
  SELECT Product, Quantity
  FROM Inventory
  WHERE Warehouse = 'FL'

  這樣的查詢使SQL Server性能效率非常低下。每次倉庫經(jīng)理執(zhí)行該查詢,數(shù)據(jù)庫服務(wù)器都不得不重新對(duì)其進(jìn)行編譯然后重新開始執(zhí)行。這樣的查詢還要求倉庫經(jīng)理具備SQL方面的知識(shí),并且擁有訪問表格數(shù)據(jù)的權(quán)限。

  我們可以通過使用存儲(chǔ)過程來簡(jiǎn)化這個(gè)查詢過程。首先創(chuàng)建一個(gè)名為 sp_GetInventory的過程,能夠獲取一個(gè)已有倉庫的貨存水平。下面是創(chuàng)建該程序的SQL代碼:

 

以下是引用片段:
  CREATE PROCEDURE sp_GetInventory
  @location varchar(10)
  AS
  SELECT Product, Quantity
  FROM Inventory
  WHERE Warehouse = @location

  A地區(qū)的倉庫經(jīng)理可以執(zhí)行下面的命令來獲得貨存水平:

 

以下是引用片段:
  EXECUTE sp_GetInventory 'FL'

  B地區(qū)的倉庫經(jīng)理可以使用同樣的存儲(chǔ)過程來訪問該地區(qū)的貨存信息。

 

以下是引用片段:
  EXECUTE sp_GetInventory 'NY'

  當(dāng)然,這只是一個(gè)很簡(jiǎn)單的例子,但是可以看出來存儲(chǔ)過程的好處。倉庫經(jīng)理不一定要懂得SQL或者存儲(chǔ)過程內(nèi)在的工作原理。從性能的角度看的話,存儲(chǔ)過程無疑大大地提高了工作的效率。SQL Server只需創(chuàng)建執(zhí)行計(jì)劃一次,然后就可以重復(fù)使用存儲(chǔ)過程,只需要在每次執(zhí)行時(shí)輸入適當(dāng)?shù)膮?shù)就可以了。

  貨存表格:   
ID
Product
Warehouse
Quantity
142
Green beans
NY
100
214
Peas
FL
200
825
Corn
NY
140
512
Lima beans
NY
180
491
Tomatoes
FL
80
379
Watermelon
FL
85
您可能感興趣的文章:
  • SQL Server存儲(chǔ)過程入門學(xué)習(xí)
  • 深入sql server 2005 萬能分頁存儲(chǔ)過程的詳解
  • 基于Sql Server通用分頁存儲(chǔ)過程的解決方法
  • SQL Server 分頁查詢存儲(chǔ)過程代碼
  • SQL Server存儲(chǔ)過程的基礎(chǔ)說明
  • SQL Server常用存儲(chǔ)過程及示例

標(biāo)簽:珠海 美容院 天水 西寧 泉州 福建 呼和浩特 商洛

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《SQL Server 存儲(chǔ)過程解析》,本文關(guān)鍵詞  SQL,Server,存儲(chǔ),過程,解析,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《SQL Server 存儲(chǔ)過程解析》相關(guān)的同類信息!
  • 本頁收集關(guān)于SQL Server 存儲(chǔ)過程解析的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    阜城县| 电白县| 上蔡县| 赤峰市| 和龙市| 大悟县| 株洲县| 庄河市| 广河县| 龙江县| 苗栗市| 昂仁县| 汉川市| 敖汉旗| 勐海县| 芜湖县| 马公市| 张家界市| 华阴市| 台东县| 万载县| 海阳市| 三穗县| 瓮安县| 乌兰浩特市| 若尔盖县| 沙坪坝区| 开封市| 庐江县| 建德市| 民丰县| 镇康县| 崇仁县| 崇义县| 和龙市| 鸡泽县| 揭西县| 台湾省| 连江县| 定西市| 新绛县|