存储过程用于银行转账等复杂逻辑中,提供对数据操作的封装,安全性更高
当一个事务涉及到多个SQL语句时或者涉及到对多个表的操作时就要考虑用存储过程;当在一个事务的完成需要很复杂的商业逻辑时(比如,对多个数据的操作,对多个状态的判断更改等)要考虑;还有就是比较复杂的统计和汇总也要考虑,但是过多的使用存储过程会降低系统的移植性。
参考:http://database.51cto.com/art/201108/281777.htm
视图在不同数据库实现方式不同,oracle提供物化视图,mysql只是虚表,不存储真实数据;可以封装数据内容,包括对别的数据库的引用