?
SELECT TOP 1 MessageSequence FROM TableA WHERE MessageSequence = @MessageSequence
SELECT , , EXISTS FALSE INSERT . , INSERT , SELECT, , INSERT. , , @MessageSequence, NOT EXISTS, INSERT, , PK.
?
, WITH (UPDLOCK) SELECT, , @MessageSequence, , , INSERT/SELECT :
INSERT TableA(MessageSequence, Data )
SELECT @MessageSequence, @Data
WHERE NOT EXISTS (
SELECT TOP 1 MessageSequence FROM TableA WITH(UPDLOCK) WHERE MessageSequence = @MessageSequence)
SQL , , ROWLOCK.
. , : , , , , , . . - @MessageSequnce, INSERT PK, . , , hte catch/retry , .
, , , SQL Server.