一次一步一步地执行2个事务MS sql

时间:2014-03-16 09:58:34

标签: sql sql-server transactions

我正在使用Microsoft SQL Server Management Studio 10.0.1600.22。我的目的是调查Read现象(如脏读等)。我做了2个包含从同一个表修改/选择的事务的查询。但是,我无法一次性从一个SQL管理工作室运行它们。我该怎么做才能调查这些现象?

1 个答案:

答案 0 :(得分:1)

是的,您可以在SQL Server Management Studio中执行此操作。

  1. 为您的查询打开2个窗口。

  2. 在第一个窗口中启动一个事务但不提交它:

    begin tran insert mytable values (1)

  3. 在第二个窗口中,运行

    select * from mytable4 with (nolock)

    这将显示您在第一个窗口中插入的记录(这是您的脏读)。

  4. 在第一个窗口中运行rollback tran

  5. 返回第二个窗口并重新运行查询。您之前看到的记录不再存在。