1、主键约束
create table person(
pid number(10) primary key,
name varchar2(10),
gender number(1) default 1,
birthday date
); 系统帮我们指定主键名字
create table person(
pid number(10),
gender number(1) default 1,
birthday date,
constraint person_pk_pid primary key(pid)
); 自己指定主键名字
2、非空约束
create table person(
pid number(10) not null,
name varchar2(10) not null,
gender number(1),
birthday date,
);
3、唯一约束
create table person(
pid number(10) ,
name varchar2(10) unique,
gender number(1) ,
birthday date
);
create table person(
pid number(10) ,
name varchar2(10),
gender number(1) ,
birthday date,
constraint person_name_uk unique(name)
);自定义唯一约束
4、检查约束
使用检查约束可以来约束字段值的合法范围。
范例:创建一张表性别只能是 1 或 2
create table person(
pid number(10) ,
name varchar2(10),
gender number(1) check(gender in (1, 2)),
birthday date
);
create table person(
pid number(10) ,
name varchar2(10),
gender number(1),
birthday date,
constraint person_gender_ck check(gender in (1,2))
);自定义检查约束
5、外键约束
create table orders(
order_id number(10) ,
total_price number(10,2),
order_time date,
constraint orders_order_id_pk primary key(order_id)
);
create table order_detail(
detail_id number(10) ,
order_id number(10),
item_name varchar2(10),
quantity number(10),
constraint order_detail_detail_id_pk primary key(detail_id),
constraint order_detail_order_id_fk foreign key(order_id) references orders(order_id)
);
级联删除:constraint order_detail_order_id_fk foreign key(order_id)
references orders(order_id) on delete cascade