oracle创建数据库的约束
创建数据库
CREATE TABLE EMP(
ID NUMBER PRIMARY KEY , --主键
EMP_NO NUMBER UNIQUE, -- 员工号唯一
NAME VARCHAR2(30) CHECK(LENGTH(NAME) BETWEEN 4 AND 20), -- 长度在4-20之间
AGE NUMBER CHECK(AGE >= 18) , -- 年龄大于18
SEX VARCHAR2(2) DEFAULT('男') CHECK(SEX IN ('女' , '男')), -- 性别在男,女之间
SAL NUMBER(19,4), -- 工资
DEPT_NO NUMBER, -- 部门
CREATE_TIME DATE DEFAULT(SYSDATE)
)
或
CREATE TABLE EMP(
ID NUMBER ,
EMP_NO NUMBER ,
NAME VARCHAR2(30),
AGE NUMBER ,
SEX VARCHAR2(2) DEFAULT('男') ,
SAL NUMBER(19,4), -- 工资
DEPT_NO NUMBER, -- 部门
CREATE_TIME DATE DEFAULT(SYSDATE),
constraint PK_ID PRIMARY KEY(ID) ,--主键
constraint UQ_EMP_NO UNIQUE(EMP_NO), -- 员工号唯一
constraint CK_NAME CHECK(LENGTH(NAME) BETWEEN 4 AND 20) , -- 长度在4-20之间
constraint CK_AGE CHECK(AGE >= 18) , -- 年龄大于18
constraint CK_SEX CHECK(SEX IN ('女' , '男')) -- 性别在男,女之间
)
插入语句
INSERT INTO EMP
(ID ,EMP_NO ,NAME , AGE , SEX , SAL , DEPT_NO ) VALUES
( 1 , 0001, '小老' , 18 , '男' , 1000 , 10 )
INSERT INTO EMP
(ID ,EMP_NO ,NAME , AGE , SEX , SAL , DEPT_NO ) VALUES
( 1 , 0001, '小老啊啊啊' , 18 , '男' , 1000 , 10 )