gpt4 book ai didi

java - 使用字符串生成器或存储过程进行单行选择

转载 作者:行者123 更新时间:2023-11-30 04:36:39 25 4
gpt4 key购买 nike

我的应用程序中有很多单行选择查询,其中包含跨越 5-6 个表的多个联接。这些查询是根据使用字符串生成器从表单等输入的许多条件生成的。然而,我的团队负责人恰好是一名 SQL 开发人员,他要求我将这些单行查询转换为存储过程。

将单行选择查询转换到后端并作为 SP 执行所有 if 和 else 是否有任何优势。

最佳答案

将所有 sql 部分放在存储过程中的一个优点是,您可以将查询保存在一个地方,即数据库,因此更改或修改会更容易,而无需在应用程序层或前端层进行大量更改。

此外,如果 SQL 存储在数据库过程中,DBA 或 SQL 开发人员还可以对 SQL 进行微调。您可以将所有函数/存储过程保存在一个包中,这在性能和组织对象方面会更好(类似于在 Java 中创建包的方式)。当然,在包中您可以限制对其对象的直接访问。

这更多的是团队或部门的政策,无论是在前端还是在数据库本身中保留sql部分,当然就像@Gimby提到的,很多人可能有不同的观点。

更新 1

如果您有一个返回某些内容的 select 语句,请使用函数,如果您有 INSERT/UPDATE/DELETE 或类似的内容(例如发送电子邮件或其他业务规则),则使用过程并通过传递参数从前端调用这些内容。

关于java - 使用字符串生成器或存储过程进行单行选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13343231/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com