如何在SQL create table中指定输入格式?

How to specify input format in SQL create table?

我是 SQL 的新手,我需要创建具有指定字段格式的 table。如何添加 CHECK 条件以确保输入将被格式化,例如

[LLLDD]

其中 L 是字母,D 是数字?

如果要在新 table

上添加约束,请尝试此操作
CONSTRAINT ck_data_checker CHECK ([columnName] LIKE ('[A-Z][A-Z][A-Z][0-9][0-9]'))

如果要在现有 table

上添加约束,请尝试此操作
  ALTER TABLE tableName
  ADD CONSTRAINT ck_data_checker CHECK ([columnName] LIKE ('[A-Z][A-Z][A-Z][0-9][0-9]'))

试试这个:http://sqlfiddle.com/#!6/3974b

create table test (
  field1 char(5),
  check (field1 like '[a-z][a-z][a-z][0-9][0-9]')
);

insert into test values ('ttt09'); --this will succeed

如果您要将插入内容更改为:

insert into test values ('testi'); -- this will fail
insert into test values ('12345'); -- this will fail

我不是 sql 服务器专家,但我认为您可以使用正则表达式添加 LIKE。看看这些网站

https://msdn.microsoft.com/en-us/library/ms179859.aspx

https://social.msdn.microsoft.com/Forums/sqlserver/en-US/dc127433-2982-4065-b290-f411a075a694/use-regular-expressions-to-check-sql-server-2012-table-fields?forum=databasedesign