The transaction name must be specified when it is used with the mark option.

Error Message:
Msg 3901, Level 16, State 1, Line 8
The transaction name must be specified when it is used with the mark option.

Severity level:
16.

Description:
This error message appears when you use a BEGIN TRAN command with the WITH MARK option without specifying a name for the transaction.

Consequences:
The T-SQL statement can be parsed, but causes the error at runtime.

Resolution:
Errors of the Severity Level 16 are generated by the user and can be fixed by the SQL Server user. The statement cannot be executed this way. You must specify a name for the transaction when you want to use the WITH MARK option.

Versions:
All versions of SQL Server.

Example(s):
IF OBJECT_ID (‘dbo.T1’) IS NOT NULL
    DROP TABLE dbo.T1;
GO

CREATE TABLE dbo.T1
(
    c1 int NOT NULL,
    c2 AS c1 * 10
);

BEGIN TRAN WITH MARK
INSERT INTO dbo.T1 SELECT 1
COMMIT TRAN;

Remarks:
In the above example we try to use a BEGIN TRAN command with the WITH MARK option without specifying a transaction name. This raises the error.

]]>

Leave a comment

Your email address will not be published.