程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> 其他數據庫知識 >> MSSQL >> SQL Server存儲進程入門進修

SQL Server存儲進程入門進修

編輯:MSSQL

SQL Server存儲進程入門進修。本站提示廣大學習愛好者:(SQL Server存儲進程入門進修)文章只能為提供參考,不一定能成為您想要的結果。以下是SQL Server存儲進程入門進修正文


以下為css款式:


div{
margin-bottom: 10px;
clear:both;
word-break:break-all;
word-wrap:break-word;
}



<pre name="code" class="css"><!--width指定每一個div占領的寬度--></pre>.custom_div{height: 23px;width: 50px;line-height: 23px;float: left;}
<pre></pre>

以下為html代碼:
[code]
<pre name="code" class="html">
<div id="pid">
<div id="d1" class="custom_div">jelly1</div>
<div id="d2" class="custom_div">jelly2</div>
<div id="d3" class="custom_div">jelly3</div>
</div></pre>
�用,從而可以削減數據庫開辟人員的任務量。
(2)進步機能。存儲進程在創立的時刻就停止了編譯,未來應用的時刻不消再從新編譯。普通的SQL語句每履行一次就須要編譯一次,所以應用存儲進程進步了效力。
(3)削減收集流量。存儲進程位於辦事器上,挪用的時刻只須要傳遞存儲進程的稱號和參數便可以了,是以下降了收集傳輸的數據量。
(4)平安性。參數化的存儲進程可以避免SQL注入式的進擊,並且可以將Grant、Deny和Revoke權限運用於存儲進程。

好了,我們來看看創立的根本語法

界說存儲進程的語法

CREATEPROC[EDURE]存儲進程名
@參數1數據類型=默許值,
…… ,
@參數n數據類型OUTPUT
AS
SQL語句
GO
參數是可選的
參數分為輸出參數、輸入參數
輸出參數許可有默許值
這裡來創立一個簡略的存儲進程

CREATE PROCEDURE UserLogin@name varchar(20),@password varchar(20)
AS
-- 界說一個暫時用來保留暗碼的變量--DECLARE @strPwd NVARCHAR(20) 這裡先不引見變量。稍後的文章會具體講到BEGINselect * from userinfo where userName=@name and userPass=@passwordENDGO
起首我們用簡略的sql查詢
select * from userinfo where userName='admin'
查詢成果:
---------------------
UserName UserPass
Admin Admin

如今我們來履行我們的存儲進程
exec UserLogin admin,admin
--或如許挪用:
EXEC UserLogin @name='admin',@password='admin'

查詢成果:
---------------------
UserName UserPass
Admin Admin

留意,在SQL SERVER中,一切用戶界說的變量都以“@”開首,OUTPUT症結字表現這個參數是用來輸入的,AS以後就是存儲進程內容了。只需將以上代碼在“查詢剖析器”裡履行一次,SQL SERVER就會在以後數據庫中創立一個名為“UserLogin”的存儲進程。你可以翻開“企業治理器”,選擇以後操作的數據庫,然後在右邊的樹型列表當選擇"可編程性->存儲進程",此時便可以在左邊的列表中看到你方才創立的存儲進程了(假如沒有,刷新一下便可)。
看到了在數據中挪用存儲進程的辦法有兩種(這裡EXEC與EXECUTE等效);

EXEC進程名 參數值1,參數值2,....

或許

EXEC 參數1=參數值1,參數2=參數值2....

下面我們也看到了。

創立如許的存儲進程有甚麼用呢,不是只能在數據中檢查賽。
我們在做web或許winform 法式,假定須要個登錄,好,我們可以挪用用這個存儲進程來登錄,依據傳入的參數,假如查詢出來有記載,那末這筆記錄在數據庫中存在,表現登錄勝利,不然掉敗。
如許做的目標加倍平安,可以避免sql注入。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved