Olá amigos do guj, estou desenvolvendo um projeto java+hibernate+postgres, estou com um problema.
na hora que vou fazer a persistencia dos dados o hibernate lê o sequence do banco postgres e está incrementando o valor da chave de 100 em 100 valores apesas de ter definido o sequence da seguinte forma:
CREATE SEQUENCE “public”."usuario_sequence"
INCREMENT 1 MINVALUE 0
MAXVALUE 9223372036854775807 START 4
CACHE 1;
na hora da persistencia ele lê a ultima chave ex:100 e na hora de nextval(usuario_sequence) ele retorna 200.
desde já agradeço pela ajuda.
Seguinte,
como está configurada a assinatura da sua classe Model???
tenho um exemplo desse auqi pode te ajudar, se for esse o problema, é claro.
@Entity
@Table(name="NOME_DA_TABELA")
@TableGenerator(name = "sequence", table = "SEQUENCE", pkColumnName = "nmPK", valueColumnName = "vlPK", allocationSize = 1)
public class [NomeDaClasse] implements Serializable {
}
Espero ter ajudado,
obrigado
isso acontece todas as vezes, inclusive quando você zera o seu sequence? existe uma trigger configurada para isto?
minha pojo tá assim:
@Entity
@SequenceGenerator(name=“usuario_sequence”,sequenceName=“usuario_sequence”)
@Table(name=“sco_usuarios”,schema=“public”)
public class Usuario {
@Id
@Column(name=“cd_usuario”)
@GeneratedValue(strategy=GenerationType.SEQUENCE,generator=“usuario_sequence”)
int cdUsuario;
String login;
String senha;
@Column(name=“id_usuario”)
String idUsuario;
public Usuario() {
super();
}
//getter’s and setter’s
isso mesmo, mesmo quando zerado o sequence ainda continua, qualquer outra classe tbm se for o primeiro objeto a ser persistido no banco ele já inicia com 100; e não tem nenhum tigger não!!!
obs: a persistencia é feita normalmente o único problema é que a sequencia está incrementando de 100 em 100 ao invéz de 1 em 1…
cara não consigo enxergar qual o problema. isto ocorre quando você faz via código SQL em um cliente externo para o postgreeSQL ?
se a resposta for sim, existe alguma configuração a ser feita, neste caso verifique a documentação do postgreeSQL e refaça do zero!
se não é algum problema de junta!
rsrsrsrsr a coisa aqui está é feia mesmo, não tem jeito. vou recomeçar do zero mesmo!!! gostaria de agradecer pela ajuda!!! obrigado!!!
Uma dúvida me trouxe hoje a este post antigo através do google.
Então acho que ainda é válido.
A resposta está aqui:
http://stackoverflow.com/questions/12745751/hibernate-sequencegenerator-and-allocationsize