数据库外键参数说明
数据库外键参数说明
CREATE TABLE branches.branch
(
branch_id uuid NOT NULL, -- 门店ID
city character varying(32) NOT NULL, -- 所在城市
name character varying(64) NOT NULL, -- 店名
bussiness_policy_id uuid ,
CONSTRAINT pk_branch PRIMARY KEY (branch_id),
CONSTRAINT fk_meta_bussiness_policy FOREIGN KEY (bussiness_policy_id)
REFERENCES meta.bussiness_policy (policy_id) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION,
CONSTRAINT fk_meta_city FOREIGN KEY (city)
REFERENCES meta.city (city) MATCH SIMPLE
ON UPDATE CASCADE ON DELETE NO ACTION,
CONSTRAINT uk_branch_name UNIQUE (name)
)
外键参数:
update 则是主键表中被参考字段的值更新,delete是指在主键表中删除一条记录:
on update 和 on delete 后面可以跟的词语有四个
no action , set null , set default ,cascade
no action 表示 不做任何操作,
set null 表示在外键表中将相应字段设置为null
set default 表示设置为默认值
cascade 表示级联操作,就是说,如果主键表中被参考字段更新,外键表中也更新,主键表中的记录被删除,外键表中改行也相应删除