sql-CONSTRAINT 子句示例
CONSTRAINT
子句用于在创建或修改表时定义约束。
基本语法
1 | CREATE TABLE table_name ( |
创建带有约束的表
1. 创建带有命名主键的表
在创建表时,可以使用 CONSTRAINT
子句来命名主键约束。这有助于以后更方便地引用和管理该约束。
1 | CREATE TABLE customer ( |
在这个示例中:
CONSTRAINT pk_customer_cno
指定约束的名称为pk_customer_cno
。PRIMARY KEY (cno)
指定cno
列为主键。
2. 创建带有唯一性约束的表
唯一性约束确保列中的所有值都是唯一的。
1 | CREATE TABLE employee ( |
在这个示例中:
CONSTRAINT uq_emp_email
指定约束的名称为uq_emp_email
。UNIQUE (emp_email)
指定emp_email
列具有唯一约束。
3. 创建带有外键约束的表
外键约束用于维护表之间的参照完整性。
1 | CREATE TABLE orders ( |
在这个示例中:
CONSTRAINT fk_customer_id
指定约束的名称为fk_customer_id
。FOREIGN KEY (customer_id) REFERENCES customer (cno)
指定customer_id
列为外键,引用customer
表的cno
列。
4. 创建带有检查约束的表
检查约束用于确保列中的值满足指定的条件。
1 | CREATE TABLE product ( |
在这个示例中:
CONSTRAINT chk_price
指定约束的名称为chk_price
。CHECK (price > 0)
指定检查约束,确保price
列的值大于 0。
修改表以添加命名约束
可以使用 ALTER TABLE
语句来添加命名约束。
添加命名主键约束
1 | ALTER TABLE customer |
添加命名唯一约束
1 | ALTER TABLE employee |
添加命名外键约束
1 | ALTER TABLE orders |
删除命名约束
可以使用 ALTER TABLE
语句来删除命名约束。
删除主键约束
1 | ALTER TABLE customer |
删除唯一约束
1 | ALTER TABLE employee |
删除外键约束
1 | ALTER TABLE orders |
- 标题: sql-CONSTRAINT 子句示例
- 作者: 三葉Leaves
- 创建于 : 2024-05-26 00:00:00
- 更新于 : 2024-11-21 16:56:20
- 链接: https://leavesblog.netlify.app/604201cdf675/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论