在什么情况下需要使用存储过程?

发布于 2022-09-02 01:00:02 字数 57 浏览 10 评论 0

**一般开发的Web项目中没有使用过存储过程。
所以有疑问,在什么情况下需要使用存储过程?**

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

怼怹恏 2022-09-09 01:00:02

为什么需要存储过程?
关系数据库是基于关系模型的数据库系统,SQL是基于关系运算的声明式语言。
SQL可以满足许多用户的查询需要,但是并不是所有需求都可以用声明的方式表达的。
存储过程(stored procedure)属于过程式语言,“过程”的意思就是一条一条执行指令。

存储过程扩展了DBMS的能力,在数据(表,关系,relation)与用户之间提供了一层抽象。
同样的功能,用sp实现相比在应用程序里实现的优点有:

  1. 与DBMS无缝集成,该功能是数据库系统的一部分,而不是与数据库割裂开。

  2. 当需要改动该功能时(修bug,或改进),只需要改sp,访问sp的应用程序无需改动。

对于事务(ACID Transaction), 最可靠的实现方式就是存储过程。
对安全性要求高的系统,用户是不允许直接update表的,而是用存储过程来封装update语句,只给用户执行相应存储过程的权限。对用户来说,存储过程就是他与数据库交互的接口。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文