-
SYBASE_DBA速成(程序员篇)中列举的几个系统并发性表现
资源介绍
系统并发性的几个表象
1.”写”阻塞”写”
2.”写”阻塞”读”
各家对读一致性解释不同。
一般认为实现“写”不阻塞“读”的方式称为脏读。
3.”读”阻塞”写”
隔离级别!!!隔离级别2,3可能出现“读”阻塞“写”的情况
例如:隔离级别3以上
IF NOT EXISTS(SELECT * FROM mbfeserialno
WHERE @vs_bankcode = nbkcode AND
lower(@vs_sqnflag) = lower(serialnocode)) (A.检查序号)
BEGIN
INSERT INTO mbfeserialno ... (序号不存在则新增初始序号)
END
...
UPDATE mbfeserialno
SET serialnoval = serialnoval + 1
WHERE @vs_bankcode = nbkcode AND lower(@vs_sqnflag) = lower(serialnocode) (B.序号存在则原序号+1)
解决方法:
IF NOT EXISTS(SELECT * FROM mbfeserialno noholdlock
WHERE @vs_bankcode = nbkcode AND
lower(@vs_sqnflag) = lower(serialnocode) ) (A.检查序号)