如何在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。看看这些网站
我是 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。看看这些网站