Usar MySql com SET

0 respostas
K

Bom dia, eu preciso usar uma variavel no mysql antes do select, montei uma query assim :

SET @saldoinicial:=(SELECT ...);       <--- aqui eu uso um select para pegar um saldo anterio
SELECT a.cod_id, a.data_evt, 
   @credito:=IF(a.tip_ope='CR',vlr_evt,0) as credito, 
   @debito:=IF(a.tip_ope='CR',0,vlr_evt) as debito, 
   @saldoinicial:=@saldoinicial+(@credito-@debito) as saldo 
FROM 
   sgi_mvt_bco a 
WHERE 
   a.ori_ope='LD' and a.cod_emp=1 and !a.flg_exc 
ORDER BY 
   a.data_evt, a.nom_evt;

 try (PreparedStatement ps = dbCnx.Conexao().prepareStatement(cQuery.toString())) {

      ResultSet rs = ps.executeQuery();                    <--- Quando executa da erro

 }

Erro:

“Você tem um erro de sintaxe no seu SQL próximo a ‘; SELECT a.cod_id, a.data_evt, a.num_lct, a.cod_evt, a.nom_evt, a.obs_evt, a.doc’ na linha 1”

Eu testei direto no mysql e esta instruçao roda normal, mas usando o prepareStatement nao funciona, pq ?

Já agradeço a ajuda.

Criado 12 de março de 2015
Respostas 0
Participantes 1