実験の詳細:
これを Microsoft SQL Server 管理スタジオで実行しています。私が実行する1つのクエリウィンドウで:
BEGIN TRANSACTION a;
ALTER table <table name>
ALTER column <column> varchar(1025)
もう一方は次のように実行します。
SELECT 1
FROM sys.objects
WHERE name = ' <other_table name>'
またはこれ:
SELECT 1
FROM sys.objects
WHERE object_id = OBJECT_ID(N'[<other_table name>]')
何らかの理由で、トランザクションにコミットするまで name= を使用した選択が返されません。
DBに時々あるalter columnの長い操作をシミュレートするためにトランザクションを行っています。他の操作に害を与えたくありません。