1、创建表格时定义外键约束:在创建表格时可以使用 FOREIGN KEY 关键字来定义外键约束,指定该列的值必须在另一张表格的某个列上存在。 例如,创建一个名为 orders 的表格,并在 customer_id 列上定义外键约束,引用 customers 表格中的 id 列: ```sql CREATE TABLE customers ( id SERIAL PRIMARY KEY, name VARC...
cvarchar);altertabletbl_foreign_refdaddconstraintpk_tbl_foreign_refd_a_bprimarykey(a,b);createtabletbl_foreign( aint, bint, cvarchar);altertabletbl_foreignaddconstraintfk_tbl_foreign_a_bforeignkey(a,b)referencestbl_foreign_refd(a,b); 上表中完整外键其实如下,因为match,on delete,on update会...
CREATE TABLE postgres=# ALTER TABLE t_f ADD CONSTRAINT t_f_f1_fkey FOREIGN KEY (f1) REFERENCES t_p (f1); ALTER TABLE postgres=# 外键只是同一个节点内约束有效果,所以外键字段和对应主键字段必须都是表的分布键,否则由于数据分布于不同的节点内会导致更新失败。
FOREIGN KEY ( column_name [, ... ] ) REFERENCES reftable [ ( refcolumn [, ... ] ) ] [ MATCH FULL | MATCH PARTIAL | MATCH SIMPLE ] [ ON DELETE referential_action ] [ ON UPDATE referential_action ] } [ DEFERRABLE | NOT DEFERRABLE ] [ INITIALLY DEFERRED | INITIALLY IMMEDIATE ] an...
通常一个表中的 FOREIGN KEY 指向另一个表中的 UNIQUE KEY(唯一约束的键),即维护了两个相关表之间的引用完整性。 实例 下面实例创建了一张 COMPANY6 表,并添加了5个字段: CREATE TABLE COMPANY6(ID INT PRIMARY KEY NOT NULL,NAME TEXT NOT NULL,AGE INT NOT NULL,ADDRESS CHAR(50),SALARY REAL); ...
数据库表有NOT NULL,DEFAULT,CHECK,UNIQUE,PRIMARY KEY,FOREIGN KEY六种约束。 一、NOT NULL --- 非空约束 NULL表示没有数据,不表示具体的数值,所以在数据库中NULL是不等于NULL的。判断表中的一个单元格是不是NULL使用的是IS NULL或者IS NOT NULL,而不是=NULL或者!=NULL,当一个字段设置NOT NULL约束后,INSER...
alter table 从表名 add constraint 外键名 foreign key (从表字段列表) references 主表名 (主表字段列表) [on delete cascade|set null]; 1. 2. 3. 4. 说明: 外键名,Oracle的标识符,建议采用FK_从表名_主表名的方式命名。 主表执行删除行时,其主键值在从表里存在便阻止删除,如果on delete cascade,...
CREATE TABLE table1 ( id SERIAL PRIMARY KEY, column1 VARCHAR(50), column2 INTEGER, FOREIGN KEY (column2) REFERENCES table2(id) ); ``` 2、如果表已经创建,可以使用ALTER TABLE语句添加外键约束,如下所示: ```sql ALTER TABLE table1 ADD CONSTRAINT fk_column2 FOREIGN KEY (column2) REFERENCES ...
通常一个表中的 FOREIGN KEY 指向另一个表中的 UNIQUE KEY(唯一约束的键),即维护了两个相关表之间的引用完整性。 实例 下面实例创建了一张 COMPANY6 表,并添加了5个字段: CREATE TABLE COMPANY6( ID INT PRIMARY KEY NOT NULL, NAME TEXT NOT NULL, ...
createtabletest_1(idnumeric,namecharactervarying(100));altertabletest_1addconstrainttest_1_uqunique(id,name);--要提供外键,必须先建立唯一约束createtabletest_2(idnumeric,a_idnumeric,a_namecharactervarying(100));altertabletest_2addconstrainttest_fkforeignkey(a_name,a_id)referencestest_1(name,id);...