sql怎樣新建存儲(chǔ)過(guò)程?
一:創(chuàng)建沒(méi)有參數(shù)的存儲(chǔ)過(guò)程:
CREATE PROCEDURE select_all
AS
BEGIN
SELECT * from T_login1
END
GO
二:創(chuàng)建帶參數(shù)的存儲(chǔ)過(guò)程:
CREATE PROCEDURE select_name
@id uniqueidentifier
AS
BEGIN
SELECT * from T_login1 where PSN0001A=@id
END
GO
擴(kuò)展資料:
創(chuàng)建存儲(chǔ)過(guò)程的注意事項(xiàng):
1、保持事務(wù)簡(jiǎn)短,事務(wù)越短,越不可能造成阻塞。
2、在事務(wù)中盡量避免使用循環(huán)while和游標(biāo),以及避免采用訪問(wèn)大量行的語(yǔ)句。
3、在啟動(dòng)事務(wù)前完成所有的計(jì)算和查詢等操作,避免同一事務(wù)中交錯(cuò)讀取和更新。可以使用表變量預(yù)先存儲(chǔ)數(shù)據(jù)。即存儲(chǔ)過(guò)程中查詢與更新使用兩個(gè)事務(wù)實(shí)現(xiàn)。
4、超時(shí)會(huì)讓事務(wù)不執(zhí)行回滾,超時(shí)后如果客戶端關(guān)閉連接sqlserver自動(dòng)回滾事務(wù)。如果不關(guān)閉,將造成數(shù)據(jù)丟失,而其他事務(wù)將在這個(gè)未關(guān)閉的連接上執(zhí)行,造成資源鎖定,甚至服務(wù)器停止響應(yīng)。