我正在尝试添加一个不会应用于现有记录的检查约束。我的尝试是:
ALTER TABLE myDB.dbo.myTable
ADD CONSTRAINT myConstraintName WITH NOCHECK (dbo.myFunction() = 0);
返回
消息 156,级别 15,状态 1,第 1 行
关键字“with”附近的语法不正确。
消息 319,级别 15,状态 1,第 1 行
关键字“with”附近的语法不正确。如果此语句是公用表表达式、xmlnamespaces 子句或更改跟踪上下文子句,则前面的语句必须以分号结束。
我还试图掌握 T-SQL 语法图的窍门。基于alter table语法和 T-SQL约定,我似乎按照下图所示的方式遵循语法图中的开关 - 导致 label <table_constraint>
。我将其解释为 table_constraint 附加图表的标签。
如何修复 T-SQL 语句中的语法?
我是否正确解释了图表?