解决方案一:(适用于数据库关系复杂,对性能要求高的情况)
1. 大多ANSI-SQL可以兼容各种数据库。
2. 不兼容的地方可以参考hibernate的实现。
一些常见的不兼容的地方包括:
1) ID生成问题
2) 结果分页 利用ResultSet的滚动方式
3. 某些特殊之处,需要利用Factory模式对不同DataBase有不同的实现。
解决方案二:(适用于数据库关系不复杂的情况,例如atlassian-confluence就是使用hibernate)
直接使用hibernate,但必须注意性能问题。尽量简单实现。
一个java产品如何更好地兼容多数据库?
兼容多数据库,我觉得可能常见有几个问题:
1. ID生成
2. 结果分页
3. ANSI-SQL在某些数据库不适用。
第一个问题是否最终只有通过UUID的方式。因为DB自增id或者应用系统自增id都不能解决兼容oracle还有集群的问题。
第二个一般用jdbc的ResultSet的滚动方式
第三个一般是在复杂查询例如报表统计的时候,我一般是针对不同数据库有具体的不同实现。
分享到:
相关推荐
oracle数据库兼容问题
oracle数据库迁移版本兼容问题.docx
Navicat Premium 多数据库兼容 视图工具,非常好用的数据库视图工具,支持sql server,mysql ,oracal,SQLite,postgreSql,mariaDb等多种数据库
iis6元数据库与iis6配置的兼容问题
Oracle 数据库多语言入库问题的解决方案 本文通过研究Oracle 数据库如何成功实现多语言入库,给出了一种实现多国语言信 息存储的基本方法,该方法解决了非中文语言入库时出现的乱码问题。随着企业在发展过程 中业务...
大部分OLTP应用系统到最后都不免要使用SQL/JPQL,然而没有一个很好的方法解决SQL在多种数据库下兼容性的问题。 EF-ORM中采用了独特的SQL解析和改写技术,能够主动检查并确保SQL语句或者SQL片段在各个数据库上的兼容...
解决jira 7.2.2安装时无法连接5.7版本mysql数据库的问题。主要还是因为连接驱动的问题。
要回答这个问题,我们先得回顾一下数据库连接的历史. 早期的数据库连接是非常困难的. 每个数据库的格式都不一样,开发者得对他们所开发的每种数据库的底层API有深刻的了解. 因此,能处理各种各样数据库的通用的API就...
此文档可以解决数据库兼容及升级问题,并且内容包括有多种解决方案!
尽管书中大多数主题都向后兼容Microsoft SQL Server 2005 Express版本,但均专门使用SQL Server 2008和Office 2010。 ● 本书中的更新还表现为使用MySQL Workbench作为MySQL 5.1的唯一数据库开发工具。本书第4版使用...
jdbc连接各类数据库的综合文档,供自己备份使用,应对各种接口
使用 DTS 需要预先创建好数据表 否则新迁移的数据库是没有主键的 而 mss2sql 工具可以解决以上问题 但转换速度非常慢 我需要转换 3000 万的数据 在一台相当不错的服务器上面 也需要几天几夜才能转换完成 而 DB2DB ...
pb 8.0 存在问题,在win10中32位操作系统下,和64位操作系统下会存在不兼容性问题。如32位可登录到64位不行,反之亦是如此。改文件解决了相关问题。
Oracle数据库的 安装 与 卸载,最全面,解决部分电脑 ORACLE不兼容WIN7的问题,带图(私人总结 禁止转载)
解决com.oscar.sql.Timestamp cannot be cast to java.time.LocalDateTime问题的有效方案。 类似的错误也同理。 更多神通数据库兼容问题可以看我的博客中解决。
经查为代码兼容性问题。 本Editor.js已修改过,将其直接覆盖Include文件夹下的同名文件即可。 若需修改图片上传大小的限制,请将本ewebeditor.mdb文件覆盖DB文件夹下的同名文件。数据库文件修改了图片上传大小的限制...
论文讨论了移动计算环境下设计和实现移动数据库系统面临的问题, 由此提出了一个基于自由软件、支持多平 台和异构、优化的“移动数据库- 同步组件- 中央数据库”三级结构的设计和实现方案。着重论述了其中的关键技术,...
解决达梦8数据库在中标麒麟上建库遇到的C++兼容性问题
6.2.2 UPDATE的常见问题 6.3 带有提交和回滚的事务管理 6.4 DELETE语句 6.5 基于Swing的表编辑器 6.5.1 TableEditFrame 6.5.2 Controller类 6.6 JDBC ResultSetMetaData 6.7 小结 第7章 使用SQL查询检索...
解决mysql 和VS 使用EF DBfirst 的兼容问题 按照下载好的exe 123 依次安装,安装完成即可使用EF 对MySQL数据库的映射。