【数据库视频】——存储过程

前言

 昨天师傅给验项目,为了存储过程和触发器,因为当时没有总结到这儿,所以一脸懵逼的听着于富在那说,这也反映出自己的一个很大的问题,看视频的时候没有走心,只是一心想着以后再总结,可是时间不等人,我们也没有那么多时间回头去复习,所以,以后多多注意吧!

分享

  • 什么是存储过程?
     存储过程是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中。存储过程可包含程序流、逻辑以及对数据库的查询。它们可以接受参数、输出参数、返回单个或者多个结果集以及返回值、
  • 为什么要使用存储过程?
    • 存储过程与其他应用程序共享应用程序逻辑,因而确保了数据访问和修改的一致性。存储过程可以封装业务功能,在存储过程中可以在同一位置改变封装的业务规则和策略。所有的客户端可以使用相同的存储过程来确保数据访问和修改的一致性。
    • 存储过程具有安全性和所有权链接,以及可以附加到它们的证书。用户可以被授予权限来执行存储过程而不必直接对存储过程中引用的对象具有权限。
    • 存储过程提供了安全机制。即使是没有访问存储过程引用的表或者视图的权限的用户,也可以被授权执行该存储过程。
    • 存储过程允许模块化程序设计。存储过程一旦创建,以后即可在程序中调用任意多次。这可以改进应用程序的可维护性,并允许应用程序统一访问数据库。
    • 存储过程可以减少网络通信流量。用户可以通过发送一个单独的语句实现一个复杂的操作,而不需要再网络上发送几百个Transact-SQL代码,这样减少了在服务器和客户机之间传递的请求的额数量。
  • 存储过程种类
    • 用户自定义存储过程
    • 系统存储过程
    • 扩展存储过程
  • 设计存储过程的规则
    • 可以引用在同一存储过程中创建的对象,只要引用时已经创建了该对象即可。
    • 可以在存储过程内引用临时表。如果在存储过程内创建本地临时表,则临时表仅为该存储过程而存在;退出该存储过程后,临时表将消失
    • 如果执行的存储过程将调用另一个存储过程,则被调用的存储过程可以访问由第一个存储过程创建的所有对象,包括临时表在内。
    • 如果执行对远程Microsoft SQL Server2008实例进行更改的远程存储过程,则不能回滚这些更改。远程存储过程不参与事务处理。
    • 存储过程中的参数的最大数目为2100
    • 存储过程中的局部变量的最大数目仅受可用内存的限制
    • 根据可用内存的不同,存储过程最大可达128MB

小结

 不知大家看懂了没有,反正我是对概念性的东西有点迷,有点尴尬哈~

猜你喜欢

转载自blog.csdn.net/Ellen5203/article/details/81902448