为不同的数据库播放框架



我是Scala的新手,也是Scala 2.0的玩框架。我喜欢自己编写SQL代码的想法,并且可以完全控制而不是依赖ORM工具。但是Anorm SQL是否适用于MySQL和Oracle等不同的数据库供应商?由于我正在编写一个应该能够与任何关系数据库一起使用的应用程序,因此我的要求是编写应该跨数据库工作的 SQL,因为我的应用程序应该与供应商数据库一起使用。

一些供应商可能有Oracle,有些可能有MySQL。所以我的代码应该是数据库无关的。这在 Scala 中是否可能,因为我知道在 mysql 上运行的 quires 不会在 Oracle 上运行。

提前致谢,普拉迪普

简短回答:否。

长答案:Anorm 只是一个库,用于通过 JDBC 将 SQL 查询分派到数据库,检索结果并将其交付给您。它不了解不同数据库之间的差异,因为它依赖于 JDBC 进行连接处理,并依赖于您来编写查询。

您要么必须自己处理不同的数据库引擎,要么让 ORM 为您处理。

PS:除非你真的需要一个与数据库无关的应用程序(并完全理解它的含义),否则我建议你简单地针对2-3个流行的引擎,避免未来的复杂情况。

最新更新