1038345 发表于 2007-2-1 17:07:52

如何实现把多个updaet/insert语句写成一个事务?

我要对某一表中的所有记录逐条处理,每一条记录都要insert表1,update表2,我怎么样写才能让每一条记录的insert和update成为一个事务呢

flybean 发表于 2007-2-2 14:00:02

存贮过程?还是其它语言?

1038345 发表于 2007-2-2 14:03:11

<p>用存储过程实现</p>

1038345 发表于 2007-2-5 15:51:37

<p>我想到用下面的方法实现,不知可行不</p><p>在一个游标里面,写下面的事务,总觉得这个办法有点罗嗦,大家有没有更好的办法?</p><p>declare @li int<br/>select @li=0</p><p>begin tran tran1</p><p>insert table1 ....<br/>if @@error&lt;&gt;0 select @li=@li+1</p><p>update table2 ...<br/>if @@error&lt;&gt;0 select @li=@li+1</p><p>if&nbsp; ...<br/>&nbsp;insert table3...<br/>else <br/>&nbsp;update table3...</p><p>if @@error&lt;&gt;0 select @li=@li+1</p><p>if @li=0 <br/>&nbsp;commit tran tran1<br/>else <br/>&nbsp;rollback tran tran1 <br/></p>

guilber 发表于 2007-3-16 13:28:11

<p>insert和update之间有什么联系呢?是临时的一个处理么?</p><p>不大明白你的意图。</p>
页: [1]
查看完整版本: 如何实现把多个updaet/insert语句写成一个事务?

免责声明:
本站所发布的一切破解补丁、注册机和注册信息及软件的解密分析文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:Admin@SybaseBbs.com