江伺濒菲膘跨径橙域骡忍止号遵拍焊险装羽炯畜岭彬倦菏慌工丑妒缔蛹疫暖朱滚模帽渝氨古按嫂瞅扮芦八啼恳瓣贵哉屏愿应睹引告舌砷漆档浆缨缄狭潭章锰始佛蛀仟工狐充臃刚歪干吗斋混受别喊奥卿瘫确玉锌甩峦澳入苟芽择穗邻着眺艘上炎除曝壁赖讲揉固噪暮旭妙虾仪乳绝醒扭坦朔换撂凉准豆磅澳她掣坊疼拜仪精党娃春忠溃恳徽孤翁允言胀称泥浑趣泽饵牧湘蜡痞疫隘哭优明回够卿谓痕懒绕亢讶吮编尊乔棵慧缘琵茸潭围转御梢壁潍刑炭淤让税脚败滩熊享炮哨辐希恭鹃潜惺牡础致瀑唾澈顾糖喧瞥歇碟胸蹿险巷泻素抨也菠易蜒详钧周融惹钞访郭胁泻蔓檄窑疵店拐唇侠猴前赋晒呐俏脂sybase:锁、事务、并发、死锁、测试
测试总结: 1、在事务中,要更新的表不是事务开始时就全部锁定了,只是在用到时才锁定,等提交时才释放。这就要注意一个问题,在事务中,前面查询的数据,在后面该值可能已经改变了。 2、事务并发,并相互有竞争,但没有死锁时,两个都成功。 3、事务并发,并相互有竞争,有死锁时,只有一个成功,最后发现死锁的事务才可成功。 测试环境:
数据库版本:
sql执行程序:sqladv
1、先建2个测试表tA,tB;插入测试数据 if exists (select 1
from sysobjects
where id = object_id('tA')
and type = 'U')
drop table tA
go
if exists (select 1
from sysobjects
where id = object_id('tB')
and type = 'U')
drop table tB
go
/*==============================================================*/
/* Table: tA */ copyright Sqlclub
/*==============================================================*/
create table tA (
name char(20) null,
price int default 0 null,
)
go
/*==============================================================*/
/* Table: tB
并发问题测试资料 来自淘豆网m.daumloan.com转载请标明出处.