3
Hello, I’ve been working with oracle for a little while, and I’m having this problem in the query, returns me the error: ORA-00907: right parenthesis not found, follows below the same:
("""select
ordem.id,ordem.data_prog,ordem.rms, ordem.pkpk, medida.ganho,ponto.descricao as ponto, unidade.id as id_unid, unidade.id_segmento as segmento,equipamento.id as id_equipamento,codigo.id, codigo.descricao
from intranet.vb_item_ordem_servico ordem
join intranet.vb_ponto_medida medida on medida.id = ordem.id_ponto_medida
join intranet.vb_ponto ponto on ponto.id = medida.id_vb_ponto
join intranet.gm_arvore arvore on arvore.id = ponto.id_arvore
join intranet.cd_unidade unidade on unidade.id = arvore.id_unidade
join intranet.gm_equipamento_arvore equipamento on equipamento.id = arvore.id
join intranet.ce_tipo_equipamento codigo on codigo.id = equipamento.id_tipo_equipamento
where (ordem.data_prog between date_sub(to_date('{}', 'DD/MM/YYYY'), INTERVAL {} MONTH) and to_date('{}', 'DD/MM/YYYY')) AND codigo.id='{}' """).format(data_prog, intervalo,data_prog, id)
Could someone tell me where I’m going wrong.
From now on I thank
Those 3 quotes at the beginning are correct?
– Diego
Does this part not have an extra parenthesis at the end? and to_date('{}', 'DD/MM/YYYY'))
– Mr_Ghost
What is the content of
data_prog
,intervalo
andid
?– Victor Stafusa
Victor, are parameters that the user informs in the script (python), data_prog, range and id are declared as string.
– Bastelli
Read about injection of SQL.
– Victor Stafusa