の後の変数を使用して、新しく作成されIDENTITY
たテーブルを取得するのが一般的な方法です。@@IDENTITY
INSERT
値を使用して同様の方法で最後のrowversion
値を取得することは正しいですか?UPDATE
@@DBTS
例えば:
IF(OBJECT_ID('XXX') IS NOT NULL)
DROP TABLE XXX
GO
CREATE TABLE XXX
(
ID int IDENTITY(1,1) PRIMARY KEY,
Name varchar(64) NOT NULL,
RV rowversion
)
GO
INSERT INTO XXX(Name) VALUES
('Apples'),('Bananas'),('Cranberries'),('Dragon Fruit'),('Eggplant'),('Fig'),('Grape')
GO
SELECT * FROM XXX
GO
UPDATE XXX
SET Name = 'Chocolate' WHERE ID = 3
PRINT @@DBTS
GO
@@DBTS
同時更新から安全になりましたか ?
UPDATE
別の接続がと の間で挿入と更新を実行する場合PRINT
、rowversion
自分の更新からの接続ではなく、「他の」接続の になりますか?