Я хочу определить новый пользовательский тип данных с помощью правила проверки, чтобы ограничить его значение, скажем,
CREATE RULE dbo.test
AS
@a LIKE '[A-Z][0-9]'
Затем я создаю пользовательский тип с этим правилом:
CREATE TYPE [dbo].[uType] FROM [varchar](2) NULL
EXEC sys.sp_bindrule @rulename=N'[dbo].[test]', @objname=N'[dbo].[uType]'
Затем проверьте это:
declare @a uType
set @a = 'K1'
set @a = 'AB'
select @a
Окончательное значение для @a
получается без появления каких-либо ошибок, как если бы правило не существовало.Почему?