我正在研究当前支持MSSQL和MYSQL的应用程序,现在我们需要使它与Oracle和Postgresql兼容。由于我们使用相同的Id为记录生成一些逻辑标识符,因此我们对为记录生成的Id有很强的依赖性。因此,我们希望每个表都具有自己的序列,以便每个新记录都有一个新的逻辑标识符是序列n,n + 1,n + 2,因此逻辑标识符将是XYn,XY(n + 1),XY(n + 2)。多个数据库支持使用休眠
对于Id使用生成策略AUTO可以同时使用MSSQL和MYSQL,但不能与Oracle或Postgresql一起使用,因为生成策略AUTO最终会映射到这些数据库的SEQUENCE。我需要为所有这些数据库维护一个通用代码,并且不能进行任何数据库更改。 请建议一些方法来完成此项工作。
我记得有可能在POSTGRE中创建序列并将其用于适合您的ID生成。你检查了@Generated的文档吗? – Antoniossss 2015-04-01 07:43:41
SEQUENCES有什么问题? – ibre5041 2015-04-01 08:16:10
从我所知道的一个序列被数据库中的所有表共享。我所说的逻辑标识符必须为多个表维护,因此每个表都需要一个自己的序列。在Oracle中, – Sushant 2015-04-01 09:03:57