hibernate+pg数据库遇到的问题
1.项目数据库需要在mysql,sqlserver,postgresql中自由切换。
2.对于些表通过hibernate.hbm。xml进行映射。(其中对每张表中的唯一标示符为主键,为从0开始自增)。
在hbm文件中,使用id为long,<generate >为native(为了一个映射文件可以在三个数据库公用)。
这个时候问题出现了。在mysql,sqlserver中每张表的id为从0开始自增。但是在pg中映射出来的数据表没有序列,只有通过手动create table(id serial)时才会有表名_字段_seq序列。
3.ok到这个时候,发现数据库中通过hibernate映射的进行数据插入(手动创见表产生序列的表)时,id的值却为一个hibernate_sequence中next值,导致全部表公用一个序列。
有什么解决方案吗?各位大大。如果在hbm中为每个id指定序列,那在mysql中又不回兼容了。