Fórum Erro com Hibernate + SGDB PostGreSQL 9.0 #388617
16/10/2010
0
@Entity()
@Table(name = "public.vendas")
public class Vendas implements java.io.Serializable {
@Id
private Integer id;
@OneToOne(cascade=CascadeType.ALL)
@JoinColumn(name = "id_usuario")
private Usuario usuario;
@Column(name = "dataVenda")
@Temporal(TemporalType.DATE)
private Date dataDaVenda;
@OneToMany(mappedBy="venda")
private List <VendaItens> itens;
public Vendas() {
}
/** Gets and Setters e Hash Code e Equals criados só foram omitidos para economizar */
}
select
vendas0_.id as id2_1_,
vendas0_.dataVenda as dataVenda2_1_,
vendas0_.id_usuario as id3_2_1_,
usuario1_.id as id0_0_,
usuario1_.nome as nome0_0_
from
public.vendas vendas0_
left outer join
public.usuario usuario1_
on vendas0_.id_usuario=usuario1_.id
where
vendas0_.id=? Exception in thread "main" org.hibernate.exception.SQLGrammarException: could not load an entity: [hibernate.Vendas#1]
at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:90)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)
at org.hibernate.loader.Loader.loadEntity(Loader.java:1895)
at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:71)
at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:65)
at org.hibernate.persister.entity.AbstractEntityPersister.load(AbstractEntityPersister.java:3072)
at org.hibernate.event.def.DefaultLoadEventListener.loadFromDatasource(DefaultLoadEventListener.java:434)
at org.hibernate.event.def.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java:415)
at org.hibernate.event.def.DefaultLoadEventListener.load(DefaultLoadEventListener.java:165)
at org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:223)
at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:126)
at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:905)
at org.hibernate.impl.SessionImpl.get(SessionImpl.java:842)
at org.hibernate.impl.SessionImpl.get(SessionImpl.java:835)
at hibernate.MainVendas.main(MainVendas.java:54)
Caused by: org.postgresql.util.PSQLException: ERROR: column vendas0_.datavenda does not exist
Posição: 31
Rogerio Moraleida
Curtir tópico
+ 0Posts
16/10/2010
Robson Teixeira
verifique como vc está gerendo a query pois pode ser isso ou teste colocando a anotação @Column no atributo id pois se faltar anotação ou anotou errado as querys dificilmente funcionam.
ate+.
Gostei + 0
16/10/2010
Rogerio Moraleida
verifique como vc está gerendo a query pois pode ser isso ou teste colocando a anotação @Column no atributo id pois se faltar anotação ou anotou errado as querys dificilmente funcionam.
ate+.
Gostei + 0
16/10/2010
Davi Costa
testa na tua anotação trocar por:
@Temporal(TemporalType.TIMESTAMP)
Depois manda o feedBack se funcionou.
Att Davi
Gostei + 0
16/10/2010
Rogerio Moraleida
testa na tua anotação trocar por:
@Temporal(TemporalType.TIMESTAMP)
Depois manda o feedBack se funcionou.
Att Davi
Gostei + 0
16/10/2010
Rogerio Moraleida
testa na tua anotação trocar por:
@Temporal(TemporalType.TIMESTAMP)
Depois manda o feedBack se funcionou.
Att Davi
Gostei + 0
17/10/2010
Davi Costa
esse banco foi o hibernate que gerou?
Tenta gerar esse banco com outro nome e compara c o banco que vc já tem.
Realmente o que vc está relatando está muito estranho, por isso tenta fazer o hibernate gerar esse
campo e compara as tabelas, para ver se tem diferença.
Att Davi
Gostei + 0
17/10/2010
Robson Teixeira
Gostei + 0
17/10/2010
Davi Costa
é pq o hibernate tem uma opção que podemos configurar para quando a aplicação subir ele gera o banco.
Daí falei para vc usar esse recurso com um nome de banco diferente para você poder comparar esse campo
que está dando problema no postgres. Só isso para ver se o hibernate cria essa coluna da mesma forma como está esse banco que já existe.
Se tiver alguma dúvida para usar esse recurso pesquisa por;
<property name="hibernate.hbm2ddl.auto" value="create" />
Espero ter sido claro agora.
Att Davi
Gostei + 0
19/10/2010
Dyego Carmo
Gostei + 0
19/10/2010
Rogerio Moraleida
Gostei + 0
20/10/2010
Rogerio Moraleida
Gostei + 0
20/10/2010
Davi Costa
ou o seu banco já havia sido gerado pelo hibernate de forma errada?
Mas de qualquer forma muito bom c ter solucionado seu problema. :)
Att Davi
Gostei + 0
20/10/2010
Rogerio Moraleida
ou o seu banco já havia sido gerado pelo hibernate de forma errada?
Mas de qualquer forma muito bom c ter solucionado seu problema. :)
Att Davi
Gostei + 0
20/10/2010
Davi Costa
poh cara bom saber então, realmente não utilizei ainda essa versão do postgres,
então será necessário sempre passar o parâmetro name dentro de @Column.
Ex.:
@Column(name="datanascimento")
Cara faz só mais um favorzão p todos da comunidade testa com:
@Column(name="data_nascimento")
Para ver também se continuaria esse problema.
De ante mã grato :) !
Att Davi
Gostei + 0
20/10/2010
Rogerio Moraleida
poh cara bom saber então, realmente não utilizei ainda essa versão do postgres,
então será necessário sempre passar o parâmetro name dentro de @Column.
Ex.:
@Column(name="datanascimento")
Cara faz só mais um favorzão p todos da comunidade testa com:
@Column(name="data_nascimento")
Para ver também se continuaria esse problema.
De ante mã grato :) !
Att Davi
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)