estou desenvolvendo uma aplicação utilizando o hibernate que vai utilizar dois SGBD’s: PostgreSQL e SQLServer.
Baseado nisso, estou fazendo um mapeamento padrão que funcione nos dois bancos, pois até onde eu sei as
anotações do hibernate não é ‘100%’ iguais para todos SGBD’s.
Estou com um problema no auto-incremento:
No postgreSQL tenho que criar senquencia, como exemplo:
Olha, com anotação eu não sei se tem um mapeamento padrão para auto incremento.
Utilizo o mapeamento com o arquivo XML e não tem mapeamento padrão, cada SGBD tem um tipo de mapeamento diferente. Na empresa que trabalho, utiliza-ze o Informix e Oracle e quando me deparei com essa situação, tive que criar dois arquivos XML, cada contendo o mapeamento de cada banco e uma classe Java, porque no final das contas é um numérico, que no meu caso era um Integer.
Li em algumas referências que alguns bancos como o PostgreSQL trabalha com SEQUENCE e outros bancos como SQL Server trabalha com IDENTITY.
E existe uma forma que seria mista, que é a estratégia de INCREMENT, pelo que percebi ela faz uma consulta no banco pega o max da chave primária e soma 1 automaticamente.
Porém não consegui funcionar esse INCREMENT, alguem sabe a respeito ou tem outra idéia para meu problema?