首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

SQL Server中怎么判断insert、update等操作是否执行成功

2012-08-09 
SQL Server中如何判断insert、update等操作是否执行成功?首先,insert、update、delete语句成功执行后会返回受

SQL Server中如何判断insert、update等操作是否执行成功?
首先,insert、update、delete语句成功执行后会返回受影响的记录数,根据返回值可以判断SQL语句是否执行成功。但是如果返回的影响记录数在网络的传输过程中丢失,也就是在收不到应答信号时,采取什么方式来判断?
如果在收不到应答信号的情况下,将SQL语句再重复执行一遍,又会导致数据的重复插入或修改,不知道是不是我想复杂了,还请大家指点迷津。。。

[解决办法]
@@ROWCOUNT
返回受上一语句影响的行数。

[解决办法]
LZ的可以返回受影响的记录数,后面的重复执行不会的。sql有事务机制的。
[解决办法]
这涉及到了sql事物吧!
[解决办法]
适当在insert 、update、delete中加入合理的事务。然后使用@@rowcont来返回是很好的操作,尽量不要使用select count(1) from xxx来查找是否变更成功,这样开销很大。同时,建议前端程序也要有一定的回滚机制,不然一旦网络断了,前端就在等待,应用程序也会有阻塞的情况出现的。性能问题不一定就是SQLServer的。
[解决办法]
不知你用的是什么语言,如果执行成功,在连接执行中可以返回sql 语句的执行错误值!如我给你一段我的代码,当是vfp代码,SQLEXEC执行sql语句时,都会有一个返回值,如果是-1,就是出错。但可以触类旁通。

VB code
   * ---------------------------------------------------- \\ gnMyLogHandle为连接文件。           IF SQLEXEC(gnMyLogHandle, "SELECT * from aaa) = -1                  = MESSAGEBOX("系统在读取服务器时间时,发生错误,请查找原因!",0x1000,m_message1)   ENDIF
[解决办法]
说说你用的编程语言,很重要。

热点排行