2017.8.23 postgresql的外键

1.增加/删除外键的语法

1 ALTER TABLE t_permission ADD CONSTRAINT fkey FOREIGN KEY (fd_resid) REFERENCES t_resource (fd_resid) ON DELETE CASCADE;
2 ALTER TABLE t_permission DROP CONSTRAINT fkey;

2.更新或删除的时候

 1 NO ACTION
 2 如果违反外键约束会产生一个错误。如果约束被延迟,那么到事务结束检查约束时如果仍然因为存在一个引用行而违反外键约束,则仍会产生错误。这是默认值。其他的动作action都不能被延迟。
 3 
 4 RESTRICT
 5 违反外键约束会产生一个错误。
 6 
 7 CASCADE
 8 级联删除或更新。分别删除一个引用行或者更新一个引用列的值。
 9 
10 SET NULL
11 当引用列删除,设置引用列(referencing column(s))的值为null
12 
13 SET DEFAULT
14 设置引用列为其缺省值。如果缺省值不是null,那么仍然需要被引用表中有一条记录的被引用字段的值与之匹配,否则操作会失败。
原文地址:https://www.cnblogs.com/lyh421/p/7418399.html