高级SQL特性

来源:互联网 发布:刘雯的人品怎么样知乎 编辑:程序博客网 时间:2024/05/21 09:33

约束、索引、触发器

约束
1. 主键 primary key
ALTER TABLE Vendors
ADD CONSTRAINT PRIMARY KEY (vend_id);
2. 外键 foreign key
外键是表中的一列,其值必须列在另一个表中的主键中。
ALTER TABLE Orders
ADD CONSTRAINT
FOREIGN KEY (cust_id) REFERENCES Customers (cust_id)
3. 检查约束
ADD CONSTRAINT CHECK (gender LIKE ‘[MF]’)
4. 唯一约束
ADD CONSTRAINT UNIQUE (safe_id);

索引
索引用来排序数据以加快搜索和排序操作的速度。索引用于数据过滤和数据排序。

CREATE INDEX prod_name_ind
ON Products(prod_name);

触发器
触发器是特殊的存储过程,它在特定的数据库活动发生时自动执行。
触发器可以与特定表上INSERT、UPDATE和DELETE操作(或组合)相关联。

下面是触发器的一些常见用途:
- 保证数据一致。
- 基于某个表的变动在其他表上执行活动。
- 进行额外的验证并根据需要回退数据。
- 计算计算列的值或更新时间戳。

一般来说,约束比触发器快。

0 0
原创粉丝点击