
事务在SQL中有什么作用
4个回答
展开全部
事务的好处在于,当你需要对多个表进行相关性操作时,使用BeginTrans()开启事务,然后操作,如果中间哪个表更新出错了,或者数据有问题,你可以用RollBack()方法在取消之前的相关性操作,如果没有错,那就使用Commit()方法提交你的修改。另外,在这个过程中,所有你改动的内容只对你自己有效,别人不能知道你改了什么,也不能对你正在改的表做修改,直到你提交之后,别人才能修改这些表,检索出你修改过的内容。
展开全部
会保证数据的一致性,要成功都成功,要失败都失败.但是SQL中用事务有可能会导致堵塞数据库进程,要慎用.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
会保证数据的一致性,要成功都成功,要失败都失败.但是SQL中用事务有可能会导致堵塞数据库进程,要慎用.
回答者: s529586
完全正确!
回答者: s529586
完全正确!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
保证数据的一致性。
如:转账,A向B转账。A存款,1000;B存款100
如果有一个约束,账户里的余额必须>0
现在开始转账
update 表名 set 金额=金额+1000 where 姓名=B
update 表名 set 金额=金额-1000 where 姓名= A
这个时候,A转账后,账户余额,已经=0,违反了约束,所以 针对ASQL语句,错误。不会执行。那么A的账户余额还是1000,但是B的SQL语句不违反任何约束,会照样执行,所以B的账户会增加1000元。这样,数据就错了
所以这里需要事物,要么两条语句,一起提交。要么两条语句一起不提交。
如:转账,A向B转账。A存款,1000;B存款100
如果有一个约束,账户里的余额必须>0
现在开始转账
update 表名 set 金额=金额+1000 where 姓名=B
update 表名 set 金额=金额-1000 where 姓名= A
这个时候,A转账后,账户余额,已经=0,违反了约束,所以 针对ASQL语句,错误。不会执行。那么A的账户余额还是1000,但是B的SQL语句不违反任何约束,会照样执行,所以B的账户会增加1000元。这样,数据就错了
所以这里需要事物,要么两条语句,一起提交。要么两条语句一起不提交。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询