De MDB para MYSQL

3 respostas
M

Ola pessoal... seguinte tenho um banco em Acess(MDB) e quero passar ele pro MySQL... Criei uma rotina para tal.

rodo o while pra pegar os dados do MDB e ja mando pro mysql, mas ele ta dando erro... não estou conseguindo usar as variaveis que vem do MDB... se eu colocar no braço passa... meu codigo é este...

try {
			Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
			Connection ConnectionMdb = DriverManager.getConnection("jdbc:odbc:cep","","");
			Statement StMdb = ConnectionMdb.createStatement();
			ResultSet RsMdb = StMdb.executeQuery("select * from tblUf");
			
			//Faz a conexão com o Mysql.
			try {
				Class.forName("com.mysql.jdbc.Driver");
				ConnectionSql = DriverManager.getConnection("jdbc:mysql://localhost:3306/dados","root","ASEHu1");
			} catch (ClassNotFoundException error2) {
				System.err.println("Driver JDBC Não encontrado.\n"+error2);
			} catch (SQLException error3) {
				System.err.println("Falha durante o processo de conexao.\n"+error3);
			}

			while (RsMdb.next()) {
				System.out.println(RsMdb.getString("Codigo")+" "+RsMdb.getString("Descricao"));
				Statement StSql = ConnectionSql.createStatement();
				StSql.executeQuery("insert into ga1(a1_uf,a1_descricao) values('"+RsMdb.getString("Codigo")+"','"+RsMdb.getString("Descricao")+"')");
			}
			
			if (ConnectionSql != null) { 
				try {
					ConnectionSql.close();
				} catch (SQLException error4) {
					error4.printStackTrace();
				}
			}
			
			StMdb.close();
			ConnectionMdb.close();
			
		} catch(Exception error1) {
			System.err.println("Nao foi possível realizar a conexão com o arquivo MDB.\n"+error1);
		}

alguem sabe o que estou fazendo errado :?:

desde ja agradeço...

3 Respostas

P

qual o erro?

M

java.sql.SQLException: No data found

P

tenta fazer o seguinte

try {

Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);

Connection ConnectionMdb = DriverManager.getConnection(“jdbc:odbc:cep,"","");

Statement StMdb = ConnectionMdb.createStatement();

ResultSet RsMdb = StMdb.executeQuery(“select * from tblUf”);
//Faz a conexão com o Mysql. 
     try { 
        Class.forName("com.mysql.jdbc.Driver"); 
        ConnectionSql = DriverManager.getConnection("jdbc:mysql://localhost:3306/dados","root","ASEHu1"); 
     } catch (ClassNotFoundException error2) { 
        System.err.println("Driver JDBC Não encontrado.\n"+error2); 
     } catch (SQLException error3) { 
        System.err.println("Falha durante o processo de conexao.\n"+error3); 
     } 

     while (RsMdb.next()) { 
        System.out.println(RsMdb.getString("Codigo")+" "+RsMdb.getString("Descricao")); 

        [b]preparedStatement StSql = ConnectionSQL.prepareStatement(insert into ga1(a1_uf,a1_descricao) values (?,?)"); 

       StSql.setString(1,RsMdb.getString("Codigo"));
       StSql.setString(2,RsMdb.getString("Descricao"));
       StSql.execute();[/b]

//        Statement StSql = ConnectionSql.createStatement(); 
//        StSql.executeQuery("insert into ga1(a1_uf,a1_descricao) values ('"+RsMdb.getString("Codigo")+"','"+RsMdb.getString("Descricao")+"')"); 
     } 
      
     if (ConnectionSql != null) { 
        try { 
           ConnectionSql.close(); 
        } catch (SQLException error4) { 
           error4.printStackTrace(); 
        } 
     } 
      
     StMdb.close(); 
     ConnectionMdb.close(); 
      
  } catch(Exception error1) { 
     System.err.println("Nao foi possível realizar a conexão com o arquivo MDB.\n"+error1); 
  }

Verifique se tem erro de sintaxe pois digitei direto aqui então pode haver algum problema, mas a base é essa. o que esta em negrito foi o que eu modifiquei

Criado 7 de março de 2007
Ultima resposta 13 de mar. de 2007
Respostas 3
Participantes 3