在单个表中添加多个约束
先决条件–SQL 约束
我们可以创建一个列中有多个约束的表。下面的例子展示了我们如何在一个表上定义不同的约束。
在创建命令中添加约束:
- Sr_no 是主键。
- 分支编号是引用分支表的外键。
- 公司类型将包含以下值之一:“1C”、“2C”、“3C”
语法:
Create table Fd_master(Sr_no varchar2(10),
Branch_no varchar2(10), account_no varchar2(20),
company_type varchar2(20), constraint pk primary key(Sr_no),
constraint fk foreign key (Branch_no) references Branch,
constraint chk check(company_type in (‘1C’, ’2C’, ’3C’)));
- 主键约束– Fd _ master 中的 Sr_no,其中 pk 是用户定义的给主键的名称。
- 外键约束– Fd _ master 中的分支号,其中 fk 是引用分支表的外键的名称。
- 检查约束– Fd _ master 中的公司类型,其中 chk 是将检查给定值的名称,即“1C”、“2C”、“3C”
在 alter 命令中添加约束: 可以通过 Alter 命令添加多列级约束。可以按顺序添加到父子表中。
约束 1(默认): 创建两个表–
- 对默认值为 1 的标识具有默认约束的父级。给约束的名称是 DF_ParentTable。
- 带有标识列的外部表。
两个表中的标识都为“非空”。
语法:
CREATE TABLE ParentTable (ID int not null constraint DF_ParentTable default (1),
name varchar2(5));
CREATE TABLE ForeignTable (ID int not null, Col2 VARCHAR(5));
约束 2(检查):
ALTER TABLE ParentTable ADD CONSTRAINT CK_ParentTable_ID CHECK(ID<100);
约束 3(外键): 外键
ALTER TABLE ParentTable
ADD CONSTRAINT FK_parent_foreign FOREIGN KEY (ID) REFERENCES ForeignTable(ID);
版权属于:月萌API www.moonapi.com,转载请注明出处