Seguinte pessoal, estou importando um arquivo txt pegando nele o que interessa e via conexao mysql inserindo no banco de dados a parte desejavel.
Estou problema com o laco...
qdo eu leio apenas uma linha do arquivo pego o que interessa e jogo via comando sql no banco de dados da tudo ok, ele conecta chama o Statement e executa o Update.
Mas e como eu faco pra ele executar o executeUpdate, a cada iteracao do for? nao vou precisa conectar no banco de dados todas as vezes neh ?
mas quando eu faco a conexao fora do for e quando eu dou o stmt.executeUpdate(String sql), ele nao reconhece a linha...
public class Main {
public static void main(String[] args) {
String vetor [] = new String [500];
String linha ;
String grava = "";
try {
Connection conn = Conexao.getConnect();
Statement stmt = null;
stmt = conn.createStatement();
}
catch (SQLException e){
e.printStackTrace();
System.out.println("Erro com o sql");
}
try {
FileReader reader = new FileReader(new File("conta.txt"));
BufferedReader leitor = new BufferedReader(reader);
Conexao c = new Conexao();
linha = leitor.readLine();
for (int i =0; linha != null ; i++) {
vetor = linha.split(".\s");
String x = vetor[vetor.length-1].replace(",",".");
grava += c.salvar (vetor[2] , x);
linha = leitor.readLine();
stmt.executeUpdate(grava); // AQUI DA PAU !!!
}
}
catch (IOException e) {
System.out.println("Erro na leitura do arquivo.");
}
}
}
Outra Classe:
public class Conexao {
private static String NOME_BANCO= "telefones";
private static String NAME = "com.mysql.jdbc.Driver";
private static String URL= "jdbc:mysql://localhost/"+NOME_BANCO;
private static String LOGIN= "root";
private static String PASS= "";
public static Connection getConnect() throws SQLException {
Connection conn = null;
try {
Class.forName(NAME);
conn= DriverManager.getConnection(URL, LOGIN, PASS);
System.out.println("Conectado" );
return conn;
} catch (ClassNotFoundException e) {
System.out.print("\n Driver Não encontrado\n");
e.printStackTrace();
return null;
}
catch (SQLException e) {
System.out.print("Erro ao obter a conexao");
return null;
}
}
public String salvar (String tels, String valores) {
String sql = "";
sql = "INSERT INTO contatelefone (tels,valores) ";
sql += " VALUES ( " + tels + " , ";
sql += valores + " ) ";
return sql;
Compiling 1 source file to C:\Documents and Settings\user\JavaApplication21\build\classes
C:\Documents and Settings\user\JavaApplication21\src\javaapplication21\Main.java:65: cannot find symbol
symbol : variable stmt
location: class javaapplication21.Main
stmt.executeUpdate(grava);
1 error
BUILD FAILED (total time: 0 seconds)