Sintaxe errada de sql no codigo java

7 respostas
jaja

filtro = " Where"""+combo+"=""+tfFiltrar.getText()+""";
eu quero fazer a variavel filtro receber o seginte codigo sql.
mas as " (aspas) e as barras() estao erradas.
alguem poderia me dar uma dica.
vlw

7 Respostas

netShot

da um olhada neste tutotial.

Retirando o SQL do seu código Java

jaja

jah li em outras oportunidades esse tutorial.
mas nao me acostumei com a ideia,
e to comecando no java…
dai quero tentar insistir na maneira tradicional.
mas obrigd.

peczenyj

Eu diria pra vc usar PreparedStatement num primeiro momento.

Ricna

Não entedi o motivo das barras…

Quanto as aspas…Use aspas simples.

String sql = " select * from " + TABLE_NAME + " where " + FIELD_NAME + " = ' " + seuParametro + " ' ";

o resultado será tipo: select * from cliente where nome = ‘Bill Gates’

Cuidado com os espaços também…

peczenyj

O ruim dessa abordagem é que, concatenando strings para formar um SQL vc tem que escapar um monte de coisa. Uma aspa digitada pelo cliente e babau. E vc fica vulnerável a SQL injection. Existe PreparedStatement pra ajudar nesses casos.

http://java.sun.com/docs/books/tutorial/jdbc/basics/prepared.html

Ricna

Claro… Mas foi isso que ele pediu e reforçou a intenção de trabalhar dessa forma.

jaja

vlw!

Criado 27 de julho de 2008
Ultima resposta 27 de jul. de 2008
Respostas 7
Participantes 4