当前位置: 首页 > 面试题库 >

何时使用存储过程而不是嵌入式SQL

乐正翰
2023-03-14
问题内容

我很困惑何时选择存储过程而不是代码中的嵌入式SQL

当我用谷歌搜索时,我发现了这些要点

  • 它们允许模块化编程
  • 它们可以减少网络流量。
  • 它们可以用作安全机制。

请告诉我网络流量与之有何关系?


问题答案:

他们可以通过仅将所需的数据返回给客户端来减少网络流量。

或扭转它;浪费网络流量的一种设计/编码实践是从数据库中选择一组数据,将其返回给客户端,然后在其中对某些数据集进行处理。显然,如果您正在处理某些数据集,那么从流量角度来看,最好不要将未处理的数据发送给客户端



 类似资料:
  • 问题内容: 是否可以在另一个存储过程中使用一个存储过程的结果? IE 我尝试使用,但无法在嵌套语句中调用。 有什么办法可以做到这一点?环境是SQL Server 2008。 问题答案: 您最多可以嵌套32个级别的存储过程。 我建议阅读这篇有关INSERT- EXEC的文章。这是一个摘录: 如果some_sp尝试使用INSERT-EXEC调用some_other_sp,您将收到一条错误消息。因此,一

  • 问题内容: 我们正处于一个新项目的开始,我们真的想知道是否应该在MySQL中使用存储过程。 我们将仅使用存储过程来插入和更新业务模型实体。有几个表代表一个模型实体,我们将在那些存储过程的插入/更新中对其进行抽象。 另一方面,我们可以从Model层调用插入和更新,但是不能在MySQL中,而是在PHP中。 根据您的经验, 哪个是最佳选择? 两种方法的优点和缺点。就高性能而言,哪个是最快的? PS:这是

  • 我目前正在尝试使用使用Spring创建的内存中HSQLDB实例创建一个测试环境,这要归功于其嵌入式数据库支持: > 为我的单元测试创建“数据源”: “stored_procedure.sql”的内容: 我能够初始化我的架构并从“默认脚本”插入我的测试数据,没有任何问题。 但是,在创建过程时,我看到了如下错误,即使在上面SQL的不同版本之后,有/没有分隔符,并且分隔符在不同位置: 我正在使用提供HS

  • 我需要在Spring批处理中使用JdbcCursorItemReader从select和exec Sybase查询中读取数据。虽然SELECT查询运行正常,但Exec查询遇到以下错误: 原因:组织。springframework。jdbc。UncategorizedSQLException:执行查询;SQL的未分类SQLException[执行过程1];SQL状态[ZZZZZ];错误代码【7773

  • 问题内容: 我正在查看MySQL存储过程和函数。真正的区别是什么? 它们似乎相似,但是功能有更多限制。 我可能是错的,但是似乎存储过程可以完成所有工作,而存储函数可以完成更多工作。为什么/何时使用过程与函数? 问题答案: 您不能将存储过程与普通的SQL混合使用,而可以与存储函数混合使用。 例如,如果是一个过程,则无效,但如果是一个函数,则可以这样做。代价是功能比程序具有更多的限制。