存储过程

## 优点
1. 更好性能
 * 存储过是预编译的,在创建时编译;一般SQL是每次执行都会编译

2. 功能实现更加灵活
 * 存储过程可以使用条件判断和游标,有很强的灵活性,还可以使用数据库内置函数,完成复杂的判断和运算
3. 减少网络传输
 * 复杂的多条SQL操作会消耗大量的网络传输,多条SQL存入存储过程会降低网络负载
4. 安全性
 * 存储过程可以屏蔽对底层数据库对象的直接访问
 * 执行过程的调用是可见的,无法看到表结构和数据库,不能嵌入SQL,有助于避免SQL注入
 

缺点
1. 架构不清晰,不够面向对象
2. 开发和维护要求比较高
3. 可移植性差

选择
1. 事务涉及多个SQL语句或者操作多个表可以选择使用存储过程
2. 事务完成很复杂的逻辑可以考虑使用存储过程
3. 比较复杂的统计或汇总可以应用存储过程



Tagged . Bookmark the permalink.

Comments are closed.