我有一个包含一些VARCHAR
字段的 SQL (SQL Server Express 2008) 表。
我想创建一个Check Constraint
确保没有任何VARCHAR
值包含某些字符。
示例:(不允许在 FirstName 和 LastName 列中使用<、>或?字符)
(NOT [FirstName] LIKE '%<%'
AND NOT [FirstName] LIKE '%>%'
AND NOT [FirstName] LIKE '%?%')
AND
(NOT [LastName] LIKE '%<%'
AND NOT [LastName] LIKE '%>%'
AND NOT [LastName] LIKE '%?%')
上面的 SQL 语法可以正常工作,但如果有速记方法来做同样的事情,那就太好了。请注意示例中的冗余。如果我想添加更多列和/或无效字符,这很麻烦
如果我们能做这样的事情就好了:
NOT FirstName,LastName LIKE IN ('<','>','?')
Check Constraint
我可以在表达式中做这样的事情吗?