SQLServer用存储过程实现插入更新数据示例
实现
1)有相同的数据,直接返回(返回值:0);
2)有主键相同,但是数据不同的数据,进行更新处理(返回值:2);
3)没有数据,进行插入数据处理(返回值:1)。
【创建存储过程】
CreateprocInsert_Update @Idvarchar(20), @Namevarchar(20), @Telephonevarchar(20), @Addressvarchar(20), @Jobvarchar(20), @returnValueintoutput as declare @tmpNamevarchar(20), @tmpTelephonevarchar(20), @tmpJobvarchar(20), @tmpAddressvarchar(20) ifexists(select*fromdbo.DemoDatawhereid=@Id) begin select@tmpName=Name,@tmpTelephone=Telephone,@tmpAddress=Address,@tmpJob=Jobfromdbo.DemoDatawhereid=@Id if((@tmpName=@Name)and(@tmpTelephone=@Telephone)and(@tmpAddress=@Address)and(@tmpJob=@Job)) begin set@returnValue=0--有相同的数据,直接返回值 end else begin updatedbo.DemoDatasetName=@Name,Telephone=@Telephone,Address=@Address,Job=@Jobwhereid=@Id set@returnValue=2--有主键相同的数据,进行更新处理 end end else begin insertintodbo.DemoDatavalues(@Id,@Name,@Telephone,@Address,@Job) set@returnValue=1--没有相同的数据,进行插入处理 end
【执行方式】
declare@returnValueint execInsert_Update'15','hugh15','3823345','长安街','副部长',@returnValueoutput select@returnValue
返回值0,已经存在相同的
返回值1,插入成功
返回值2,更新成功
热门推荐
1 训练狗狗憋尿
2 狗狗追踪训练
3 狗狗训练要多少钱
5 深圳狗狗训练
6 训练狗狗唤回
7 狗狗叫怎么训练
8 狗狗训练班
10 狗狗社会化训练
11 狗狗叫回训练
12 广州狗狗训练学校
13 狗狗训练躺下
14 狗狗随行训练
15 训练狗狗巡回
16 狗狗要怎么训练
17 狗狗喂食训练
18 训练狗狗躺下