首页 新闻 会员 周边 捐助

sql server 存储过程丢失更新

0
悬赏园豆:5 [已关闭问题] 关闭于 2012-05-25 13:30

在一个存储过程中,对同一行数据进行了两次更新,第一次更新丢失。怎么解决这个问题?

Jean Feng的主页 Jean Feng | 初学一级 | 园豆:162
提问于:2012-05-11 13:11
< >
分享
所有回答(4)
0

最简单的处理方法:

update 表名
set 更新字段=新值 
where 更新字段=旧值 
dudu | 园豆:30948 (高人七级) | 2012-05-11 13:26

谢谢。 不能根据更新字段值来查询,两次更新都是根据ID来的,where Id='值'。有什么办法没有。第一次更新后commit也不行

支持(0) 反对(0) Jean Feng | 园豆:162 (初学一级) | 2012-05-11 13:31

@Jean Feng: 

加一个timestamp类型的字段,比如叫Version,更新的SQL语句改为:

update 表名
set 更新字段=新值 
where Id='' and Version = 'version'
支持(0) 反对(0) dudu | 园豆:30948 (高人七级) | 2012-05-11 14:26
0

加一个时间字段,会这标记位字段。

小材小用 | 园豆:639 (小虾三级) | 2012-05-11 14:57
0

理论上不存在这样的问题,请给更多的信息.

go on coding | 园豆:343 (菜鸟二级) | 2012-05-13 00:09
0

取消while循环,修改参数,在存储过程中调用本身

Jean Feng | 园豆:162 (初学一级) | 2012-05-25 13:30
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册