MS SQL的存储过程
生活随笔
收集整理的這篇文章主要介紹了
MS SQL的存储过程
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
-- =============================================
-- Author:
-- Create date: 2016-07-01
-- Description: 注冊(cè)信息
-- =============================================
ALTER PROCEDURE [dbo].[sp_MebUser_Register]( @UserType INT, @MobileNumber VARCHAR(11), @MobileCode VARCHAR(50), @LoginPwd VARCHAR(50), @PayPwd VARCHAR(50), @PlateNumber VARCHAR(20), @UserTrueName VARCHAR(20), @UserIDCardNumber VARCHAR(50), @UserSex bit, @AddTime DATETIME, @Max_ParkUserId VARCHAR(20) output--輸入輸出參數(shù))
AS
--IF EXISTS(SELECT * FROM Meb_User WHERE MobileNumber=@MobileNumber)--先判斷用戶是否存在declare @datenow varchar(100) --聲明變量 時(shí)間declare @rt_code intdeclare @VCOUNT intdeclare @returnmesg varchar(100)
BEGINset @datenow=(Select CONVERT(varchar(100), GETDATE(), 112)) --變量賦值set @Max_ParkUserId=@datenow+@MobileNumber --時(shí)間+手機(jī)號(hào)=用戶服務(wù)號(hào)
set @VCOUNT=(SELECT COUNT(1) FROM Meb_User mb WHERE mb.MobileNumber=@MobileNumber) if (@VCOUNT>0)BEGINset @returnmesg ='該手機(jī)號(hào)已注冊(cè)'RETURN set @rt_code=1ENDelseBEGIN
--SET NOCOUNT ON;
--當(dāng)SET NOCOUNT 為ON 時(shí),不返回計(jì)數(shù)(計(jì)數(shù)表示受Transact-SQL 語(yǔ)句影響的行數(shù),例如在Sql server查詢分析器中執(zhí)行一個(gè)delete操作后,下方窗口會(huì)提示()Rows Affected)。當(dāng) SET NOCOUNT 為OFF 時(shí),返回計(jì)數(shù),我們應(yīng)該在存儲(chǔ)過(guò)程的頭部加上SET NOCOUNT ON 這樣的話,在退出存儲(chǔ)過(guò)程的時(shí)候加上SET NOCOUNT OFF這樣的話,以達(dá)到優(yōu)化存儲(chǔ)過(guò)程的目的。
begin transactionbegin tryinsert into Meb_User (UserType,MobileNumber,MobileCode,LoginPwd,PayPwd,PlateNumber,UserTrueName,UserIDCardNumber,UserSex,AddTime,ParkUserId)values(@UserType,@MobileNumber,@MobileCode,@LoginPwd,@PayPwd,@PlateNumber,@UserTrueName,@UserIDCardNumber,@UserSex,@AddTime,@Max_ParkUserId)commit transactionset @rt_code=0;return;end try begin catchprint '錯(cuò)誤'rollback transactionend catchENDEND
?
很久沒(méi)使用MSSQL了 最近新的項(xiàng)目需求記錄一下點(diǎn)滴。
?
總結(jié)
以上是生活随笔為你收集整理的MS SQL的存储过程的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: nginx + uwsgi + Djan
- 下一篇: linux cmake编译源码,linu