回答

收藏

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

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

我有一个将值插入表中的过程。
5 s$ z* H. L% [* f  C+ I- E" rdeclare @fName varchar(50),@lName varchar(50),@check tinyintINSERT INTO myTbl(fName,lName) values(@fName,@lName)编辑:
  m( W* D8 a# ?; X# g! |$ f现在我想检查它是否成功插入设置@check = 0否则@check = 1  c# i) M- A4 f6 ~& w
                                                               
  B6 T. c, Z# e0 l    解决方案:                                                                8 X- E$ i- J6 H' J
                                                                您可以@@ROWCOUNT通过插入操作,立即使用服务器变量检查受影响的行数。$ o& b0 p/ \4 i6 h' O
declare @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句子(根据评论):4 Y: e5 w1 c/ v4 O- |
--If you need @check as a bit type please change Int to bitDECLARE @check Int = CASE WHEN @@ROWCOUNT = 0 THEN 1 ELSE 0 END
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则