Android面试经(一)

如何创建一个存储过程

本人在一家500强面试的时候,没想到会问这样的问题,只是觉得一句语句就能解决的问题,有什么好说的,但是结束之后才感觉到也许面试官想问的不只是这些。下面,我把我的反思和总结分享给大家。

一个好的程序员,必须有判断的思维,所以说,在写创建语句之前,一定要加上一个判断。

(1) 判断这条语句是否存在

if(exists(select * from sys.objects where name='这里是存储过程的名字'))

drop 存储过程名

(2) 创建存储过程

create proc 存储过程名(@参数)

as(后面这些网上都有)

declare @ID int --定义变量

declare @Account varchar(50) --同上

declare @Content varchar(50) --同上

if not exists(select * from tblBlackList(nolock) --如果不存在则执行下面的语句.

where fdcMobile=@strMobile)

begin

insert into tblBlackList(fdcMobile,fdcName,fdtTm,fdcMemo)

values(@strMobile,@strName,getdate(),@strRemark) --getdate()获取当前系统的时间

set @ID=@@identity --返回一行记录

select @Account=Account from dbo.UserInfo where UserID=@UserID

set @Content='添加黑名单('+'操作者:'+@Account+','+'用户名:'+@strName+'手机:'+@strMobile+'备注:'+@strRemark+')' --设置变量的值

exec ProcRecordLog @Account,'添加',@Content ---执行储过程ProcRecordLog

return @ID

end

GO

也许语句是次要的,那个判断的思维才是真正考验人的。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容