SQLSever 存储过程创建
先上示例代碼:
SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: <Author,,Name> -- Create date: <Create Date,,> -- Description: <Description,,> -- ============================================= CREATE PROCEDURE insert_user@phonenum varchar(20) ,@name varchar(10),@sex varchar(5),@password varchar(20),@isguide varchar(2),@address varchar(30),@signature varchar(100) AS BEGINinsert into userTablevalues (@phonenum,@name,@sex,@password,@isguide,@address,@signature) END GO存儲(chǔ)過(guò)程是什么?按我的理解:存儲(chǔ)過(guò)程的內(nèi)容就是一堆SQL語(yǔ)句,執(zhí)行存儲(chǔ)過(guò)程就是執(zhí)行這些語(yǔ)句。觸發(fā)器和存儲(chǔ)過(guò)程類(lèi)似,可以說(shuō)觸發(fā)器是特殊的存儲(chǔ)過(guò)程。不過(guò)存儲(chǔ)過(guò)程一般人為調(diào)用比較多。上述代碼,就是創(chuàng)建了個(gè)簡(jiǎn)單的存儲(chǔ)過(guò)程,名為insert_user ,目的為了向userTable插入數(shù)據(jù)。
對(duì)象資源管理器→數(shù)據(jù)庫(kù)→可編程性→存儲(chǔ)過(guò)程 ?, 右鍵新建即可
在SQLsever執(zhí)行存儲(chǔ)過(guò)程語(yǔ)句
在sql server中 執(zhí)行帶參數(shù)的存儲(chǔ)過(guò)程
exec+空格+存儲(chǔ)過(guò)程名+空格+參數(shù)
多個(gè)參數(shù)的話(huà)用逗號(hào)分隔 傳出參數(shù)要加output
例如:
exec insert_user '1234599','misstext','男','123456','0','text省','hellow'在C#中如何執(zhí)行這些存儲(chǔ)過(guò)程?
? 在 Sqlcommand cmd= new SqlCommand(cmdText, Getconn()); ?中 , 創(chuàng)建的sqlcommand 對(duì)象 cmd中有個(gè)屬性是CommandType,它的默認(rèn)值是CommandType.Text,也就是默認(rèn)執(zhí)行的是sql語(yǔ)句 ,當(dāng)cmd.CommandType=CommandType.StoredProcedure ,執(zhí)行的便是存儲(chǔ)過(guò)程。執(zhí)行的內(nèi)容(cmdText)寫(xiě)存儲(chǔ)過(guò)程名,傳入?yún)?shù)用SqlParameter 對(duì)象,參數(shù)名要和存儲(chǔ)過(guò)程參數(shù)名一致。
相關(guān)SQLhelper和使用方法可參照?http://blog.csdn.net/supersmart_dong/article/details/71512345
總結(jié)
以上是生活随笔為你收集整理的SQLSever 存储过程创建的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: SQLSever触发器建立
- 下一篇: Oracle 原理:复杂的SQL语句