Hint '%ls' on object '%.*ls' is invalid.

Error Message:
Msg 8171, Level 16, State 1, Line 7
Hint ‘%ls’ on object ‘%.*ls’ is invalid.

Severity level:
16.

Description:
This error message appears when you try to use a hints that is invalid on the given object.

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

Resolution:
Error of the Severity level 16 are generated by the user and can be fixed by the SQL Server user. The statement cannot be run this way. You can only use hints that are valid for the object in question.

Versions:
All versions of SQL Server.

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

CREATE TABLE dbo.t
(
    c1 int
);
GO

INSERT INTO dbo.t
SELECT 1 UNION ALL
SELECT 2 SELECT
    *
FROM
    dbo.t WITH (HOLDLOCK, IGNORE_CONSTRAINTS)

Remarks:
In the above example we try to use the IGNORE_CONSTRAINTS hint in a SELECT statement on dbo.t. This raises the error.

]]>

Leave a comment

Your email address will not be published.