Duvida iniciante

14 respostas
ken420
private void botao_gravarActionPerformed(java.awt.event.ActionEvent evt) {

try

{

String sqlinsert =insert into cliente(Nome,UF,Rg,Cpf,DdN,End,N,Comp,FoneR,FoneC,Cep,Email,DataCad,Obs) values (’”+

tf_Nome.getText()+"’,’"+tf_Rg.getText()+"’,’"+tf_Cpf.getText()+"’,’"+tf_DdN.getText()+"’,’"+tf_End.getText()+"’,’"+tf_N.getText()+"’,’"+tf_Comp.getText()+"’,’"+

tf_FoneR.getText()+"’,’"+tf_FoneC.getText()+"’,’"+tf_Cep.getText()+"’,’"+tf_Email.getText()+"’,’"+tf_DataCad.getText()+"’,’"+tf_Obs.getText()"’);

pessoal to com a seguinte dúvida fis uma tela de cadastro de cliente e ele acessa o banco de dados do access esse código eh do botao gravar no caso gravar todos dados escritos na tela, ta certo juntar todos com “’,’” ? pq quando tava so tf_Nome.getText()+" tava normal e quando incrementei os outros deu um erro na minha variavel conexao(que no caso é uma variavel que conecta ao banco de dados);

14 Respostas

marcosvidolin

Olá,

Checa como esta colocados as aspas duplas (") e as simples (’), se esta em ordem correta e tudo mais, pois fica tudo meio que junto "’ e acaba confundindo.

Flw.

wbdsjunior

você postou o código certo aqui? pergunto porque no final está faltando uma " antes do ;…

aqui ó:

tf_Obs.getText()"')"; ^

wbdsjunior

ah! um dica:

use PreparedStatment.

evita o problema que o marcosvidolin disse e outros.

abraço.

ken420

String sqlinsert =“insert into cliente(Nome,UF,Rg,Cpf,DdN,End,N,Comp,FoneR,FoneC,Cep,Email,DataCad,Obs) values (’”+
tf_Nome.getText()+"’,’"+tf_Rg.getText()+"’,’"+tf_Cpf.getText()+"’,’"+tf_DdN.getText()+"’,’"+tf_End.getText()+"’,’"+tf_N.getText()+"’,’"+tf_Comp.getText()+"’,’"+
tf_FoneR.getText()+"’,’"+tf_FoneC.getText()+"’,’"+tf_Cep.getText()+"’,’"+tf_Email.getText()+"’,’"+tf_DataCad.getText()+"’,’"+tf_Obs.getText()"’)";

corrigi ele assim e ele ta aparecendo a mensagem de erro q ta faltando ;

:evil: ;~~

ken420

quando tento compilar da nisso

init:

deps-jar:

Compiling 1 source file to \NetBeansProjects\Estoque\src\cadastros\clientes2.java:721: unclosed character literal

tf_FoneR.getText()+"’,’"+tf_FoneC.getText()+"’,’"+tf_Cep.getText()+"’,’"+tf_Email.getText()+"’,’"+tf_DataCad.getText()+"’,’"+tf_Obs.getText())";

C:\Documents and Settings\kenshin\Meus documentos\NetBeansProjects\Estoque\src\cadastros\clientes2.java:721: unclosed string literal

tf_FoneR.getText()+","+tf_FoneC.getText()+","+tf_Cep.getText()+","+tf_Email.getText()+","+tf_DataCad.getText()+","+tf_Obs.getText()’)";

2 errors

FALHA NA CONSTRUÇÃO (tempo total: 1 segundo)
wbdsjunior

ken420:
quando tento compilar da nisso

init:

deps-jar:

Compiling 1 source file to \NetBeansProjects\Estoque\src\cadastros\clientes2.java:721: unclosed character literal

tf_FoneR.getText()+"’,’"+tf_FoneC.getText()+"’,’"+tf_Cep.getText()+"’,’"+tf_Email.getText()+"’,’"+tf_DataCad.getText()+"’,’"+tf_Obs.getText())";

C:\Documents and Settings\kenshin\Meus documentos\NetBeansProjects\Estoque\src\cadastros\clientes2.java:721: unclosed string literal

tf_FoneR.getText()+","+tf_FoneC.getText()+","+tf_Cep.getText()+","+tf_Email.getText()+","+tf_DataCad.getText()+","+tf_Obs.getText()’)";

2 errors

FALHA NA CONSTRUÇÃO (tempo total: 1 segundo)

</blockquote>

acho que esqueci do “+” depois do tf_Obs.getText()

tf_Obs.getText() + "')"; ^
tente agora.

B

Pelamordedeus use um PreparedStatement…

Do modo que está dá pra fazer um ataque de SQL Injection e derrubar todas as tuas tabelas.

ken420

ok vou tentar

ken420

consegui finalmente tirar os erros porem agora eu clico no botao de gravar e ele da catch (SQLException erro) ;//// q q eu faco gente algueim me salva ai esta o código to a 3 dias nisso ;~~~~

private void botao_gravarActionPerformed(java.awt.event.ActionEvent evt) {

try

{

String sqlinsert = insert into cliente +

(Nome,FoneR,Rg,Cpf,Email,End,N,Comp,UF,FoneC,Cep,DdN,DataCad,Obs,Foto) values (’”+

tf_Nome.getText()+"’,’"+

tf_FoneR.getText()+"’,’"+

tf_Rg.getText()+"’,’"+

tf_Cpf.getText()+"’,’"+

tf_Email.getText()+"’,’"+

tf_End.getText()+"’,’"+

tf_N.getText()+"’,’"+

tf_Comp.getText()+"’,’"+

tf_CodUf.getText()+"’,’"+

tf_FoneC.getText()+"’,’"+

tf_Cep.getText()+"’,’"+

tf_DdN.getText()+"’,’"+

tf_DataCad.getText()+"’,’"+

tf_Obs.getText()+"’)";

con_cidade.statement.executeUpdate(sqlinsert);

JOptionPane.showMessageDialog(null, Gravação feita com sucesso);
//Atualiza o ResultSet
    con_cidade.resultset = con_cidade.statement.executeQuery("select * from cliente order by "+ordenacao);
    con_cidade.executeSQL("select * from cliente order by "+ordenacao);
    atualiza_combo_box_cidade();
    con_cidade.resultset.first(); //pocisiona no 1º reg
    mostra_dados();
    
}

catch (SQLException erro)
{
    JOptionPane.showMessageDialog(null, "Erro ao tentar gravar o registro");
}
B

Poderias imprimir a exceção que ele dá?

ken420
catch (SQLException erro)

{

JOptionPane.showMessageDialog(null, Erro ao tentar gravar o registro);

}

da esse erro!

B

Debugue o código ou ponha isto:

catch (SQLException erro) { JOptionPane.showMessageDialog(null, "Erro ao tentar gravar o registro: " + erro.getMessage()); }

ken420

apareceu isso agora oh Erro ao tentar gravar o registro [Microsoft][Driver ODBC para MS Access]Tipo de dados imcompativel na expressao de critério.

ken420

ele n ta salvando no meu banco de dados com o botao salvar =[

Criado 17 de novembro de 2008
Ultima resposta 19 de nov. de 2008
Respostas 14
Participantes 4