Oi pessoal, tenho que fazer um update meio complicado com o Hibernate, que estou fazendo com HQL:
"update FaixaHorario fh set fh.tipo.id = :tipoId, fh.feriado = :feriado, "
"fh.qtdAtendente = :qtdAtendente, fh.horarioInicial = :inicial, "
"fh.horarioFinal = :final, fh.intervaloTempo = :intervalo "
"where fh.parametro.posto.id in (select p.id from Posto p where p.ar.id = :arId)"Depois seto os parâmetros da forma apropriada. O script gerado é o seguinte:
update TB_PTA_PRAMTZ_FAIXA_HORARIO,
set CD_TIPO_FAIXA=?, IN_FERIADO=?, NU_ATENDENTE=?, HR_INICIO_ATEND=?, HR_FINAL_ATEND=?, NU_INTEVALO_TEMPO=?
where
CD_POSTO_ATENDIMENTO in (
select posto2_.CD_POSTO_ATENDIMENTO
from TB_PTA_POSTO_ATENDIMENTO posto2_ where posto2_.CD_AR=? )Só aí já vi 2 erros. Primeiro, ele colocou uma vírgula após o nome da tabela, o que gera um erro “ORA-00971: missing SET keyword”. Se jogar o script no oracle e remover a vírgula, ele indica que a coluna CD_POSTO_ATENDIMENTO não existe, e não existe mesmo, deveria ter uma referência ao posto, como é no subselect.
Alguém tem algum idéia do que pode ser feito para resolver esses problemas? Obrigado! :thumbup: