你的进程2应该是触发器吧,
---------------------------------
进程2:
BEGIN TRAN
INSERT INTO T1 VALUES ('B')
COMMIT TRAN
--------------------------------
TI 应该是 T2 吧……
---------------------------------
进程2:
BEGIN TRAN
INSERT INTO T1 VALUES ('B')
COMMIT TRAN
--------------------------------
TI 应该是 T2 吧……
解决方案 »
- 数据库
- 紧急求助!要求每日晚上3:00自动地对已经备份的数据库恢复到已经存在的数据库中?如何..
- 数形层次数据的查询?
- 删出了数据库中的记录,但是用log explorer找不到日志文件记录??
- 为什么同样一段sql语句,直接在企业管理器中查询非常快,而在asp中却速度很慢?
- 解密存储过程
- 三个表关联操作两个触发器,遇到问题,SOS!
- 数据库语句的问题
- 传统ADO实现问题一问?
- 高手请进(关于控制用户使用的问题,很有讨论价值)
- SQL拼写........................................................
- 俺有一个问题,关于sql server 数据库字段设定的?
1、INSERT INTO T1 VALUES ('A')
数据集:
1,A
2、进程二;INSERT INTO T1 VALUES ('B')
数据集:
1,A
2, B
3、执行:SELECT @ID = MAX(T1_ID) FROM T1 结果:@ID=2
UPDATE T1 SET XM = 'C' WHERE T1_ID = @ID
相当于:UPDATE T1 SET XM = 'C' WHERE T1_ID =2
4、最后结果集:
1,A
2, C
------------------------------------------
将进程2中的的TI改为T2,将会得到你药的结果……
1.請搞清線程和進程的區別,一口一個進程,搞的我雲里霧里的
2.問題很簡單你在執行A時,取得A的獨佔鎖.加上with...
see 了吧
进程1:
BEGIN TRAN
DECLARE @ID INT
INSERT INTO T1 VALUES ('A')
SELECT @ID = T1_ID FROM T1 WHERE T1_ID=@@IDENTITY
UPDATE T1 SET XM = 'C' WHERE T1_ID = @ID
COMMIT TRAN
BEGIN TRAN
DECLARE @ID INT
INSERT INTO T1 VALUES ('A')
UPDATE T1 SET XM = 'C' WHERE T1_ID = @@IDENTITY
COMMIT TRAN
BEGIN TRAN
INSERT INTO T1 VALUES ('A')
UPDATE T1 SET XM = 'C' WHERE T1_ID = @@IDENTITY
COMMIT TRAN
不好意思,晚上又喝多了!