是否可以使用JDBC作为RDBMS的抽象层?

use*_*215 2 java sql abstraction jdbc relational-database

JDBC提供了一个API,可用于连接到不同的RDBMS或类似的数据存储.但数据存储区的实现方式不同(例如SQL方言).

是否可以以这种方式使用JDBC,我的查询和语句适用于大多数常见的RDBMS(例如:Oracle,PostgreSQL,SQL Server,MySQL)?

这个问题在两个方面对我很有意思:*常见SQL(INSERT,UPDATE,SELECT等)*访问元数据(获取有关表和列的信息)

我目前正在尝试使用自编写的持久性框架,并希望在其下插入JDBC数据存储区.因此,如果我编写JDBC数据存储区适配器,那么它将很好,如果它可以在大多数常见的RDBMS上工作.

提前致谢

Axe*_*ine 5

JDBC RDBMS的抽象层.

不幸的是,正如您在问题中已经认识到的那样,抽象是漏洞.

如果你坚持使用所有RDBMS共有的SQL和元数据的小部分,你会没事的.但实际上,你很可能很快就会超出这些限制.