PostgreSQL 主键 外键约束 自动增长

来源:互联网 发布:淘宝店铺可以改天猫么 编辑:程序博客网 时间:2024/06/05 06:39

PostgreSQL

BEGIN;CREATE TABLE TEST_MDK ( TID         SERIAL NOT NULL PRIMARY KEY   /* 创建主键 并 TID 为 自动 增长列 */ ,TEST_ID     VARCHAR(256),TEST_NAME   VARCHAR(1024));ALTER SEQUENCE TEST_MDK_TID_SEQ RESTART WITH 10000; /* 修改 自动 增长列 从 10000 开始 */CREATE TABLE TEST_MDK1 ( ID          SERIAL NOT NULL PRIMARY KEY,TEST_TID    INTEGER REFERENCES TEST_MDK (PID) ON DELETE CASCADE /* 建立外键约束, ON DELETE CASCADE 删除主表的数据,从表相应数据也会自动删除 */,TEST_MONEY  VARCHAR(1024));ALTER SEQUENCE TEST_MDK_ID_SEQ RESTART WITH 10000;COMMIT; 


CREATE TABLE TEST_MDK (     TID  SERIAL NOT NULL PRIMARY KEY);ALTER SEQUENCE TEST_MDK_TID_SEQ RESTART WITH 10000;/* 等介于下面几段语句 */CREATE SEQUENCE TEST_MDK_TID_SEQ START 10000;CREATE TABLE TEST_MDK (TID integer DEFAULT nextval('TEST_MDK_TID_SEQ') NOT NULL);/*SERIAL 会自动创建 表明_字段名_SEQ 的 SEQUENCE ,并且 删除表时 SEQUENCE 会自动 删除。CREATE SEQUENCE 只能手动 删除  DROP SEQUENCE SEQ_NAME*/

ON DELETE CASCADE 同样适用于 Oracle 和 SqlServer 的 外键级联删除