WARN [org.hibernate.engine.jdbc.spi.SqlExceptionHelper] (EJB default - 4) SQL Error: 8102, SQLState: S0001
ERROR [org.hibernate.engine.jdbc.spi.SqlExceptionHelper] (EJB default - 4) Não é possível atualizar a coluna de identidade ‘id’.
Eu insiro vários dados no projeto inicialemente, porém mais adiante eu tenho uma classe que atualiza a coluna ID do meu BANCO no qual é AUTO-INCREMENT, ou seja.
@Id
@SequenceGenerator(name = “seqEntities”, sequenceName = “seqEntities”)
@GeneratedValue(strategy = GenerationType.IDENTITY, generator = “seqEntities”)
public Long getId() {
return this.id;
}
OBS: Banco de dados ORACLE e POSTGRESQL o projeto funciona 100%, muito bem sem erros, problema está em SQL SERVER, no qual preciso muito.
aqui está a atualização, existe isso em 4 classes…
manager.flush();
String queryStr = “UPDATE " + LOSStorageLocationType.class.getSimpleName() + " SET id=:idNew WHERE id=:idOld”;
Query query = manager.createQuery(queryStr);
query.setParameter(“idNew”, id);
query.setParameter(“idOld”, slType.getId());
query.executeUpdate();
manager.flush();
slType = null;
Oque poderia ser feito pra atualizar essa coluna? algo assim?
manager.getTransaction().begin();
manager.createNativeQuery("SET IDENTITY_INSERT JBOSS.los_storagelocationtype ON").executeUpdate();
manager.getTransaction().commit();
manager.persist(type);
manager.getTransaction().begin();
manager.createNativeQuery("SET IDENTITY_INSERT JBOSS.los_storagelocationtype OFF").executeUpdate();
manager.getTransaction().commit();
Aguardo…