create table tb(id varchar(8) check (id like '00'+'%[0-9][0-9]%'+'_'+'%[a-z][a-z][a-z]%')) ???未测试!
use tempdb Go if object_id('mytable') Is Not Null Drop Table mytable--给一个列增加约束,只能是8位数,前两位是0这我知道,可后面,3-4位为数字,5位为下划线,6-8为字母怎么写条件 Create Table mytable ( Nr nchar(8), Constraint CK_mytable_Nr check (len(Nr)=8 And Nr like '00[0-9][0-9][_][A-Za-z][A-Za-z][A-Za-z]') )Insert Into mytable(Nr) values('0012_ASB')Insert Into mytable(Nr) values('00125AdB') /* 訊息 547,層級 16,狀態 0,行 12 INSERT 陳述式與 CHECK 條件約束 "CK_mytable_Nr" 衝突。衝突發生在資料庫 "tempdb",資料表 "dbo.mytable", column 'Nr'。 陳述式已經結束。 */
create table tb(id varchar(8) check (id like '00'+'%[0-9][0-9]%'+'_'+'%[a-z][a-z][a-z]%'))
???未测试!
Go
if object_id('mytable') Is Not Null
Drop Table mytable--给一个列增加约束,只能是8位数,前两位是0这我知道,可后面,3-4位为数字,5位为下划线,6-8为字母怎么写条件
Create Table mytable
(
Nr nchar(8),
Constraint CK_mytable_Nr check (len(Nr)=8 And Nr like '00[0-9][0-9][_][A-Za-z][A-Za-z][A-Za-z]')
)Insert Into mytable(Nr) values('0012_ASB')Insert Into mytable(Nr) values('00125AdB')
/*
訊息 547,層級 16,狀態 0,行 12
INSERT 陳述式與 CHECK 條件約束 "CK_mytable_Nr" 衝突。衝突發生在資料庫 "tempdb",資料表 "dbo.mytable", column 'Nr'。
陳述式已經結束。
*/