高级SQL特性
2016-08-12 13:51
176 查看
约束、索引、触发器
约束
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操作(或组合)相关联。
下面是触发器的一些常见用途:
- 保证数据一致。
- 基于某个表的变动在其他表上执行活动。
- 进行额外的验证并根据需要回退数据。
- 计算计算列的值或更新时间戳。
一般来说,约束比触发器快。
约束
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操作(或组合)相关联。
下面是触发器的一些常见用途:
- 保证数据一致。
- 基于某个表的变动在其他表上执行活动。
- 进行额外的验证并根据需要回退数据。
- 计算计算列的值或更新时间戳。
一般来说,约束比触发器快。
相关文章推荐
- SQL 必知必会·笔记<20>高级SQL特性
- 高级SQL特性
- LINQ to SQL语句之动态查询高级特性
- Oracle PL/SQL高级特性
- JDBC PreparedStatement高级特性:批量执行sql语句
- SQL必知必会(五) 使用视图、使用储存过程、管理事务处理、使用游标、高级SQL特性
- 常用sql语句-高级特性(事务,索引,约束)
- Oracle PL/SQL中异常高级特性示例解析
- oracle PL/SQL高级特性
- 读书笔记--SQL必知必会22--高级SQL特性
- SQL必知必会 笔记 第二十二章 了解高级SQL特性
- 第二十二课(二)、高级SQL特性
- PL/SQL编程(高级特性)
- PL/SQL编程(高级特性)
- PostgreSQL用户应掌握的高级SQL特性 - PGSQL
- 第二十二课(一)、高级SQL特性
- Microsoft Sql Server 2005 BI特性
- 写人器(生物编写及生物遗传特性编码)高级语言编译系统
- SQL SERVER 2005 T_SQL新的特性以及解决并发
- SQL注入高级技巧nowthk篇