使用 MySQL 存储过程的优缺点是什么?


使用 MySQL 存储过程有许多优点和缺点,如下所示:

MySQL 存储过程优点

以下是使用 MySQL 存储过程的优点:

  • 提高应用程序性能 - 正如我们所知,创建存储过程后,它会被编译并存储在数据库中。但 MySQL 对存储过程的实现略有不同,这有助于提高应用程序的性能。MySQL 存储过程按需编译。编译存储过程后,MySQL 会将其放入缓存中。并且 MySQL 为每个连接维护其自己的存储过程缓存。如果应用程序在单个连接中多次使用存储过程,则使用已编译的版本;否则,存储过程的工作方式类似于查询。
  • 快速 - MySQL 存储过程速度很快,因为 MySQL 服务器利用了缓存。其速度的另一个原因是它减少了网络流量。假设,如果我们有一个需要检查、循环、多个语句且没有用户交互的重复性任务,则可以通过对存储在服务器上的过程进行一次调用来完成。
  • 可移植性 - MySQL 存储过程是可移植的,因为当我们在 SQL 中编写存储过程时,我们知道它可以在 MySQL 运行的每个平台上运行,而无需我们安装额外的运行时环境包或设置操作系统的程序执行权限。
  • 可重用且透明 - 存储过程将数据库接口公开给所有应用程序,以便开发人员不必开发存储过程已支持的功能。因此,我们可以说 MySQL 存储过程是可重用且透明的。
  • 安全 - MySQL 存储过程是安全的,因为数据库管理员可以向访问数据库中存储过程的应用程序授予相应的权限,而无需向底层数据库表授予任何权限。

MySQL 存储过程缺点

以下是使用 MySQL 存储过程的优点:

  • 内存使用量增加 - 如果我们使用许多存储过程,则使用这些存储过程的每个连接的内存使用量将大大增加。
  • 对复杂业务逻辑的限制 - 实际上,存储过程的构造并非为开发复杂且灵活的业务逻辑而设计。
  • 难以调试 - 存储过程难以调试。只有少数数据库管理系统允许您调试存储过程。不幸的是,MySQL 不提供调试存储过程的功能。
  • 难以维护 - 开发和维护存储过程并不容易。开发和维护存储过程通常需要一组专门的技能,并非所有应用程序开发人员都具备。这可能导致应用程序开发和维护阶段出现问题。

更新时间: 2020年6月22日

3K+ 次查看

开启您的 职业生涯

通过完成课程获得认证

开始学习
广告