Olá pessoal,
Estou com problemas para executar a seguinte SQLQuery no Hibernate. Ao executa-la recebo uma mensagem dizendo que a coluna ‘tx_nome’ não existe, mas se executo essa mesma query no banco ela funciona normalmente.
SELECT
L.cp_lancamento_cereais_graos,
L.nr_ticket,
L.tx_nf_produtor,
L.ce_empresa,
P.tx_nome AS tx_nome_produtor,
PR.tx_nome AS tx_nome_proprural,
PD.tx_nome AS tx_nome_produto,
V.tx_nome AS tx_nome_variedade,
M.tx_nome AS tx_nome_motorista,
VI.tx_placa,
L.qt_peso_bruto,
(L.qt_peso_bruto - L.qt_peso_liquido) AS qt_descontos,
L.qt_peso_liquido
FROM
view_lancamentos_cereais_graos AS L,
produtores AS P,
propriedades_rurais AS PR,
veiculos AS VI,
motoristas AS M,
variedades AS V,
produtos AS PD
WHERE
L.ce_produtor = P.cp_produtor
AND L.ce_propriedade_rural = PR.cp_propriedade_rural
AND L.ce_veiculo = VI.cp_veiculo
AND L.ce_motorista = M.cp_motorista
AND L.ce_variedade = V.cp_variedade
AND V.ce_produto = PD.cp_produto
ORDER BY
L.ce_empresa,
P.tx_nome,
PR.tx_nome,
PD.tx_nome,
V.tx_nome
Tentei não renomear as colunas tx_nome, deixando assim:
SELECT
L.cp_lancamento_cereais_graos,
L.nr_ticket,
L.tx_nf_produtor,
L.ce_empresa,
P.tx_nome,
PR.tx_nome,
PD.tx_nome,
V.tx_nome,
M.tx_nome,
VI.tx_placa,
L.qt_peso_bruto,
(L.qt_peso_bruto - L.qt_peso_liquido) AS qt_descontos,
L.qt_peso_liquido
FROM
view_lancamentos_cereais_graos AS L,
produtores AS P,
propriedades_rurais AS PR,
veiculos AS VI,
motoristas AS M,
variedades AS V,
produtos AS PD
WHERE
L.ce_produtor = P.cp_produtor
AND L.ce_propriedade_rural = PR.cp_propriedade_rural
AND L.ce_veiculo = VI.cp_veiculo
AND L.ce_motorista = M.cp_motorista
AND L.ce_variedade = V.cp_variedade
AND V.ce_produto = PD.cp_produto
ORDER BY
L.ce_empresa,
P.tx_nome,
PR.tx_nome,
PD.tx_nome,
V.tx_nome
Dessa maneira a query é executada, mas em todos os campos ‘tx_nome’ eu recebo o valor do campo ‘P.tx_nome’.
Se alguém puder me explicar o que o Hibernate está fazendo, ficarei grato