黑马程序员技术交流社区

标题: 数据库问题,使用存储过程有什么好处! [打印本页]

作者: 胡双挺    时间: 2012-1-14 10:18
标题: 数据库问题,使用存储过程有什么好处!
怎样是数据较快的从数据库中读出,有事后在ASP.NET学习中,需要创建很多的存储过程,请问存储过程是怎么运行的,有些不理解。
作者: 黄山    时间: 2012-1-14 10:44
 1.存储过程只在创造时进行编译,以后每次执行存储过程都不需再重新编译,而一般SQL语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度。
  2.当对数据库进行复杂操作时(如对多个表进行Update,Insert,Query,Delete时),可将此复杂操作用存储过程封装起来与数据库提供的事务处理结合一起使用。   
3.存储过程可以重复使用,可减少数据库开发人员的工作量   
4.安全性高,可设定只有某些用户才具有对指定存储过程的使用权


其实可以用方法来理解存储过程
作者: 阿磊-_-    时间: 2012-1-15 15:30
1.存储过程可以使得程序执行效率更高、安全性更好,因为过程建立之后 已经编译并且储存到数据库,直接写sql就需要先分析再执行因此过程效率更高,直接写sql语句会带来安全性问题,如:sql注入
2.建立过程不会很耗系统资源,因为过程只是在调用才执行。
其次当数据量越大执行过程越长.如是几十条几或几K可能看不出效果如果是上10W或者过100W你就会发现速度(查询、更新)会慢很多,,随著数据量增大你的存储过程执行时间会更长是一定的
作者: 折翼    时间: 2012-2-2 05:30
.存储过程可以使得程序执行效率更高、安全性更好,因为过程建立之后 已经编译并且储存到数据库,直接写sql就需要先分析再执行因此过程效率更高,直接写sql语句会带来安全性问题,如:sql注入
2.建立过程不会很耗系统资源,因为过程只是在调用才执行。





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2