felipeaqueiroz 27 de ago. de 2011
Olá,
Qual a mensagem de erro que aparece? A conexão é realizada com sucesso?
afonso_java 27 de ago. de 2011
A conexao direta na classe de conexao realiza normal
o erro eh esse.
Exception in thread "AWT-EventQueue-0" java . lang . Error : Unresolved compilation problems :
The method setString ( int , String ) is undefined for the type Statement
The method setString ( int , String ) is undefined for the type Statement
The method setString ( int , String ) is undefined for the type Statement
The method setString ( int , String ) is undefined for the type Statement
The method setString ( int , String ) is undefined for the type Statement
The method setString ( int , String ) is undefined for the type Statement
at Cliente . Formulario_Cliente . actionPerformed ( Formulario_Cliente . java : 156 )
at javax . swing . AbstractButton . fireActionPerformed ( Unknown Source )
at javax . swing . AbstractButton $ Handler . actionPerformed ( Unknown Source )
at javax . swing . DefaultButtonModel . fireActionPerformed ( Unknown Source )
at javax . swing . DefaultButtonModel . setPressed ( Unknown Source )
at javax . swing . plaf . basic . BasicButtonListener . mouseReleased ( Unknown Source )
at java . awt . Component . processMouseEvent ( Unknown Source )
at javax . swing . JComponent . processMouseEvent ( Unknown Source )
at java . awt . Component . processEvent ( Unknown Source )
at java . awt . Container . processEvent ( Unknown Source )
at java . awt . Component . dispatchEventImpl ( Unknown Source )
at java . awt . Container . dispatchEventImpl ( Unknown Source )
at java . awt . Component . dispatchEvent ( Unknown Source )
at java . awt . LightweightDispatcher . retargetMouseEvent ( Unknown Source )
at java . awt . LightweightDispatcher . processMouseEvent ( Unknown Source )
at java . awt . LightweightDispatcher . dispatchEvent ( Unknown Source )
at java . awt . Container . dispatchEventImpl ( Unknown Source )
at java . awt . Window . dispatchEventImpl ( Unknown Source )
at java . awt . Component . dispatchEvent ( Unknown Source )
at java . awt . EventQueue . dispatchEventImpl ( Unknown Source )
at java . awt . EventQueue . access $ 000 ( Unknown Source )
at java . awt . EventQueue $ 3 . run ( Unknown Source )
at java . awt . EventQueue $ 3 . run ( Unknown Source )
at java . security . AccessController . doPrivileged ( Native Method )
at java . security . ProtectionDomain $ 1 . doIntersectionPrivilege ( Unknown Source )
at java . security . ProtectionDomain $ 1 . doIntersectionPrivilege ( Unknown Source )
at java . awt . EventQueue $ 4 . run ( Unknown Source )
at java . awt . EventQueue $ 4 . run ( Unknown Source )
at java . security . AccessController . doPrivileged ( Native Method )
at java . security . ProtectionDomain $ 1 . doIntersectionPrivilege ( Unknown Source )
at java . awt . EventQueue . dispatchEvent ( Unknown Source )
at java . awt . EventDispatchThread . pumpOneEventForFilters ( Unknown Source )
at java . awt . EventDispatchThread . pumpEventsForFilter ( Unknown Source )
at java . awt . EventDispatchThread . pumpEventsForHierarchy ( Unknown Source )
at java . awt . EventDispatchThread . pumpEvents ( Unknown Source )
at java . awt . EventDispatchThread . pumpEvents ( Unknown Source )
at java . awt . EventDispatchThread . run ( Unknown Source )
felipeaqueiroz 27 de ago. de 2011
Não tenho certeza, mas parece que o erro está em alguma parte no método setString…
Você já testou a sua string de inserção
no console do mysql para ver se funciona?
afonso_java 27 de ago. de 2011
ja testei passar os valor pelo dbtreeview num insert e foi normal
Mas em livros eu vi que se define “?” e depois passa por ali
this.mysql_con.statement.setString(1,txt_Nome.getText());
o numero 1 define o primeiro ponto e assim por diante.
String sql = "insert into cliente(Nome,data_nasc,cpf,rg,fone,endereco) values (?,?,?,?,?,?)";
PreparedStatement mysqPreparedStatement = this.mysql_con.conectar.prepareStatement(sql);
this.mysql_con.statement.setString(1,txt_Nome.getText());
this.mysql_con.statement.setString(2,txt_dataNasc.getText());
this.mysql_con.statement.setString(3,txt_cpf.getText());
this.mysql_con.statement.setString(4,txt_rg.getText());
this.mysql_con.statement.setString(5,txt_fone.getText());
this.mysql_con.statement.setString(6,txt_end.getText());
felipeaqueiroz 27 de ago. de 2011
afonso_java 27 de ago. de 2011
Da o mesmo erro de antes.
afonso_java 27 de ago. de 2011
jamirdeajr 27 de ago. de 2011
Tenta assim:
PreparedStatement mysqPreparedStatement = this.mysql_con.conectar.prepareStatement(sql);
mysqPreparedStatement.setString(1,txt_Nome.getText());
mysqPreparedStatement.setString(2,txt_dataNasc.getText());
mysqPreparedStatement.setString(3,txt_cpf.getText());
mysqPreparedStatement.setString(4,txt_rg.getText());
mysqPreparedStatement.setString(5,txt_fone.getText());
mysqPreparedStatement.setString(6,txt_end.getText());
mysqPreparedStatement.executeUpdate(sql);
afonso_java 27 de ago. de 2011
po vei sumiu o erro do setString
mas gerou outro problema nao ta carregando o driver.
Class.forName(mysql_con.driver);
Exception in thread "AWT-EventQueue-0" java . lang . Error : Unresolved compilation problem :
Unhandled exception type ClassNotFoundException
jamirdeajr 27 de ago. de 2011
afonso_java 27 de ago. de 2011
adicionei sim olha ai na lib
jamirdeajr 27 de ago. de 2011
Versão 3.0xxx, antes troque por uma versão mais recente:
http://dev.mysql.com/downloads/connector/j/
felipeaqueiroz 27 de ago. de 2011
O conector do mysql já está na versão 5
E também eu acho que nem precisa mais usar essa linha
afonso_java 27 de ago. de 2011
nao deu certo ainda
comentei o carregador do driver
e mesmo assim ele ta caindo la no catch
public void actionPerformed ( ActionEvent e )
{
if ( e . getSource () == botao_gravar )
{
try
{
// aqui ele fica marcado
Class . forName ( mysql_con . driver );
mysql_con . conectar = DriverManager . getConnection ( mysql_con . url , mysql_con . user , mysql_con . senha );
String sql = "insert into cliente(Nome,data_nasc,cpf,rg,fone,endereco) values (?,?,?,?,?,?)" ;
PreparedStatement mysqlPreparedStatement = this . mysql_con . conectar . prepareStatement ( sql );
mysqlPreparedStatement . setString ( 1 , txt_Nome . getText ());
mysqlPreparedStatement . setString ( 2 , txt_dataNasc . getText ());
mysqlPreparedStatement . setString ( 3 , txt_cpf . getText ());
mysqlPreparedStatement . setString ( 4 , txt_rg . getText ());
mysqlPreparedStatement . setString ( 5 , txt_fone . getText ());
mysqlPreparedStatement . setString ( 6 , txt_end . getText ());
mysqlPreparedStatement . executeUpdate ( sql );
// E R R A D O
// PreparedStatement mysqPreparedStatement = this . mysql_con . conectar . prepareStatement ( sql );
// this . mysql_con . statement . setString ( 1 , txt_Nome . getText ());
// this . mysql_con . statement . setString ( 2 , txt_dataNasc . getText ());
// this . mysql_con . statement . setString ( 3 , txt_cpf . getText ());
// this . mysql_con . statement . setString ( 4 , txt_rg . getText ());
// this . mysql_con . statement . setString ( 5 , txt_fone . getText ());
// this . mysql_con . statement . setString ( 6 , txt_end . getText ());
// this . mysql_con . statement . executeUpdate ( sql );
}
catch ( SQLException sqlException ) {
JOptionPane . showMessageDialog ( null , "deu pau" );
}
}
}
jamirdeajr 27 de ago. de 2011
Em algum lugar na inicialização da tua aplicação você está executando um comando assim?
Você pode fazer um teste, substitua o seguinte:
por
e veja se continua dando exceção na mesma linha…
jamirdeajr 27 de ago. de 2011
Teu catch pode ficar melhor se você fizer assim
catch (SQLException sqlException) {
JOptionPane.showMessageDialog(null, "deu pau:"+ sqlException.getMessage());
}
afonso_java 27 de ago. de 2011
Tentei e da o mesmo erro
o catch ta acusando os (?,?,?,?,?) do insert.
aff`s
jamirdeajr 27 de ago. de 2011
Opa, mais uma coisa:
Isso
Troque por: (sem o sql, ele já foi “preparado”)
afonso_java 27 de ago. de 2011
po vei agora deu certo valeu obrigadao mesmo.
mais tive que colocar no Jtext a data invertida “yyyy”-“mm”-“dd”
fora essa duvida.
como colocar a mascara no campo?
tipo pra quando eu digitar colocar soh os numeros.
jamirdeajr 27 de ago. de 2011
Bom, não entendo muito de JText… mas dá uma olhada aqui:
http://www.guj.com.br/java/26103-mascara-em-um-jtextfield
afonso_java 27 de ago. de 2011
pooo valeu ai, muito obrigado pela ajuda.
como que faz pra encerrar o topico, colocar como resolvido aqui?
jamirdeajr 27 de ago. de 2011
Você pode editar o assunto da primeira mensagem do tópico, adicionando a expressão [Resolvido]
Blz?
afonso_java 27 de ago. de 2011