回答

收藏

如何检查插入值是否成功?

技术问答 技术问答 434 人阅读 | 0 人回复 | 2023-09-14

我有一个将值插入表中的过程。7 S  u6 _9 v" s+ l1 S4 Q
declare @fName varchar(50),@lName varchar(50),@check tinyintINSERT INTO myTbl(fName,lName) values(@fName,@lName)编辑:* g4 q9 Y7 I- s) x' [
现在我想检查它是否成功插入设置@check = 0否则@check = 1
& |! }  ~$ Q9 I0 v( V; X+ X# [                                                                6 o3 g# a4 T; d7 ?/ p" s
    解决方案:                                                               
) Z; D% G* u( i                                                                您可以@@ROWCOUNT通过插入操作,立即使用服务器变量检查受影响的行数。
2 w# ^9 j; A! ]( F* ^1 E; ]+ Y+ mdeclare @fName varchar(50) = 'Abcd         @lName varchar(50) = 'Efgh'INSERT INTO myTbl(fName,lName) values(@fName,@lName)PRINT @@ROWCOUNT --> 0- means no rows affected/nothing inserted                  --> 1- means your row has been inserted successfully您可以根据您的要求使用一个Case句子(根据评论):
; p) q1 v8 d& U2 x# F9 B--If you need @check as a bit type please change Int to bitDECLARE @check Int = CASE WHEN @@ROWCOUNT = 0 THEN 1 ELSE 0 END
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则