我创建了一个存储员工记录的信息表,它的 SQL 查询如下...
CREATE TABLE info1 (
empid VARCHAR(8) PRIMARY KEY CONSTRAINT empchk
CHECK (empid IN ('kh\%' ESCAPE '\''),
initials CHAR(6), fname CHAR(25) NOT NULL,
lname CHAR(25),
userstatus INTEGER NOT NULL,
designation CHAR(10) NOT NULL
);
现在,正如你所看到的,约束在empid
哪里kh%
——据我所知——%
意味着任何数量的以下字符(8
当然限于)可以是任何东西,对吧?
我正在使用Java DB,奇怪的是它也将%
符号作为字符串的一部分,所以如果我输入khce0001
,它会说empchk
违规,它只接受kh%
我应该怎么办?为什么会这样?