如何創(chuàng)建一個存儲過程
本人在一家500強面試的時候突倍,沒想到會問這樣的問題腔稀,只是覺得一句語句就能解決的問題,有什么好說的赘方,但是結(jié)束之后才感覺到也許面試官想問的不只是這些烧颖。下面,我把我的反思和總結(jié)分享給大家窄陡。
一個好的程序員炕淮,必須有判斷的思維,所以說跳夭,在寫創(chuàng)建語句之前涂圆,一定要加上一個判斷们镜。
(1) 判斷這條語句是否存在
if(exists(select * from sys.objects where name='這里是存儲過程的名字'))
drop 存儲過程名
(2) 創(chuàng)建存儲過程
create proc 存儲過程名(@參數(shù))
as(后面這些網(wǎng)上都有)
declare @ID int --定義變量
declare @Account varchar(50) --同上
declare @Content varchar(50) --同上
if not exists(select * from tblBlackList(nolock) --如果不存在則執(zhí)行下面的語句.
where fdcMobile=@strMobile)
begin
insert into tblBlackList(fdcMobile,fdcName,fdtTm,fdcMemo)
values(@strMobile,@strName,getdate(),@strRemark) --getdate()獲取當前系統(tǒng)的時間
set @ID=@@identity --返回一行記錄
select @Account=Account from dbo.UserInfo where UserID=@UserID
set @Content='添加黑名單('+'操作者:'+@Account+','+'用戶名:'+@strName+'手機:'+@strMobile+'備注:'+@strRemark+')' --設(shè)置變量的值
exec ProcRecordLog @Account,'添加',@Content ---執(zhí)行儲過程ProcRecordLog
return @ID
end
GO
也許語句是次要的,那個判斷的思維才是真正考驗人的润歉。