r b*_*bhd 3 sql-server integrity
我不知道如何创建具有可选约束的域?我试过
CREATE DOMAIN idx INT CHECK (VALUE > 100 AND VALUE < 999);
Run Code Online (Sandbox Code Playgroud)
但在 CREATE、DROP 或 ALTER 语句中遇到了以下错误未知对象类型“DOMAIN”。
CREATE TYPE myType AS TABLE
(
idx INT,
CHECK (idx > 100 AND idx < 999)
)
Run Code Online (Sandbox Code Playgroud)
或者您也可以创建规则并将它们绑定到您的类型。
CREATE TYPE [dbo].[myType]
FROM [INT] NOT NULL
GO
CREATE RULE multiplyByTen
AS @myType % 10 = 0
AND @myType > 100
AND @myType < 999
Run Code Online (Sandbox Code Playgroud)
然后绑定规则
EXEC sp_bindrule 'multiplyByTen', 'myType'
Run Code Online (Sandbox Code Playgroud)