Erro Consulta SQL + Ireport

5 respostas
I

Pessoal, estou tentando gerar um Relatório no IReport. Já gerei um com uma consulta SQL simples e funcionou normal. Já este abaixo eu preciso de nomear cada tabela para referenciar seus atributos. Já tentei por exempllo:

FROM tb_ident as ident, mas tb não deu certo.

Então tentei o código abaixo, porém tá dando erro, conforme descrito. O q pode estar errado?

conexao.getConnection().createStatement().executeQuery("SELECT tb_ident.batelada, tb_ident.datainicial, tb_codsaida.nome, dadosfinais.fluor, dadosfinais.caco3" +
"FROM tb_ident, tb_codsaida, dadosfinais" +
"WHERE (tb_ident.batelada = dadosfinais.batelada and tb_codsaida.codigo = tb_ident.codigo"), [\code]

E então o erro:
[code]
com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

5 Respostas

C

Está sql está incorreta, tente corrigir a sintaxe.

I

Isso eu entendi :slight_smile: Porém ñ estou conseguindo encontrar o erro na sintaxe!

U
dadosfinais.caco3" +
 "FROM tb_ident, tb_codsaida, dadosfinais" +
 "WHERE (tb_ident.batelada = dadosfinais.batelada and tb_codsaida.codigo = tb_ident.codigo"),

tenta colocar espaço na sua concantenação de string na sua query:

"FROM tb_ident, tb_codsaida, dadosfinais   "  +
 "WHERE (tb_ident.batelada = dadosfinais.ba..."
RenataFA

É isso ai, a questão dos espaços tá faltando msm, e acho que tem um parênteses que tá faltando tb, vc tá fechando depois das aspas. Dá uma olhada:

conexao.getConnection().createStatement().executeQuery("SELECT tb_ident.batelada, tb_ident.datainicial, tb_codsaida.nome, dadosfinais.fluor, dadosfinais.caco3" + "FROM tb_ident, tb_codsaida, dadosfinais" + "WHERE (tb_ident.batelada = dadosfinais.batelada and tb_codsaida.codigo = tb_ident.codigo"),

Tente assim:

conexao.getConnection().createStatement().executeQuery("SELECT tb_ident.batelada, tb_ident.datainicial, tb_codsaida.nome, dadosfinais.fluor, dadosfinais.caco3 " + "FROM tb_ident, tb_codsaida, dadosfinais " + "WHERE (tb_ident.batelada = dadosfinais.batelada and tb_codsaida.codigo = tb_ident.codigo)"),

I

valeu pessoal era isso mesmo

Criado 2 de julho de 2007
Ultima resposta 2 de jul. de 2007
Respostas 5
Participantes 4