Bom estou fazendo um select no banco e com a informação q estou pegando quero ja fazer um insert…
Oq esta errado ai pessoal ???
[code]try{
//Registrando o driver:
Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);
//Estabelecendo a conexão através do ODBC criado no Painel de Controle:
con = DriverManager.getConnection(“jdbc:odbc:SQLEXPRESS2005”,"","");
//Criando um objeto Statement para enviar requisições SQL para o Banco de Dados
stmt = con.createStatement();
//Executando SQL:
ResultSet rs = stmt.executeQuery(“select Cd_Area from AREA where Nome_Area = '”+item+"’");
rs.next();
insert into CAND_AREA (Cd_Candidato, Cd_Area) values ("+Integer.parseInt(txt_codigo.getText())+","+Integer.parseInt(area)+")";
e essa conversao para int não é necessária… da uma analisada geral nesse seu código…
utilize coringas ao invés de concatenações cara fica muito melhor o código da query.
caso voce queira fazer um update verifica as constraints do seu banco primeiro e utilize a clausula update fica mais bonito.
tente utilizar a query update tabela set camp = valordesejado
segue um exemplo de uma query que eu fiz
PreparedStatement stmt = this.connection
.prepareStatement("insert into contatos(nome, email, endereco)values(?,?,?)");
// Insere os dados o primeiro campo eh o valor do coringa(INDEX) e o
// segundo o que deseja colocar no coringa
stmt.setString(1, contato.getNome());
stmt.setString(2, contato.getEmail());
stmt.setString(3, contato.getEndereco());
// executa o comando e em seguida fexa a conexão
stmt.execute();
stmt.close();