gpt4 book ai didi

使用不同关系数据库的Java程序

转载 作者:行者123 更新时间:2023-11-29 08:19:51 24 4
gpt4 key购买 nike

我有一个一般性问题。是否有可能有一个java程序与用户在应用程序设置中指定的数据库类型一起工作。这意味着,根据应用程序运行的服务器以及运行的数据库服务器的类型,应用程序必须调整自身以运行其查询。
我是否必须为不同类型的数据库指定不同的查询?

最佳答案

这可能吗?当然。

一般来说,如果您确实需要数据库独立性,则可以利用独立于数据库的框架来编写应用程序来处理持久数据并从相关数据库中检索数据。例如,像 Hibernate 这样的东西知道如何构建针对 Oracle 的查询,以及如何生成针对 SQL Server、MySQL 等执行相同操作的不同查询。

当然,构建完全独立于数据库的应用程序会带来其他问题。例如,不同的数据库以不同的方式处理锁定——SQL Server 中的一个简单的SELECT 会锁定一行,而在Oracle 中则不会。这可能会导致您的应用程序根据数据库的不同而表现不同。此外,完全独立于数据库的应用程序通常无法像利用特定数据库的独特功能的应用程序一样扩展 - 像 Hibernate 这样的框架不会针对任何特定数据库生成对您的特定应用程序最有效的 SQL。当然,它会针对每个数据库生成一般合理的 SQL,但了解业务需求和特定数据库的人几乎肯定可以做得更好。

关于使用不同关系数据库的Java程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19718200/

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