Forma rapida de fazer select e insert em bancos diferentes

9 respostas
J

olá,

tenho o seguinte problema:
tenho uma tabela no db2 onde realizarei o select e tenho uma tabela igual no oracle onde realizarei o insert.
Minha pergutna é: Como posso fazer de uma maneira simples e rapida o select e insert, tinha pensado e m fazer o select linha a linha e ir inserido mais creio q vai demroar muito e vai dar trabalho para criar o preparedstament pois a tabela tem 62 campos.

alguma dica?

Grato.

9 Respostas

D

Para tabelas exatamente iguais pode se fazer:

INSERT INTO 
				 	table1  
				 SELECT  
					*  
				 FROM  
					table2

Caso não sejam exatamente iguais é possível especificar os campos no insert e no select

Espero ter ajudado, não sei bem se era isso que estava procurando.

J

Danilo Carvalho:
Para tabelas exatamente iguais pode se fazer:

INSERT INTO 
				 	table1  
				 SELECT  
					*  
				 FROM  
					table2

Caso não sejam exatamente iguais é possível especificar os campos no insert e no select

Espero ter ajudado, não sei bem se era isso que estava procurando.


o problema que nao sei como fazer esse sql ja q a tabela de origem esta em um banco db2 e a de destino esta em um banco oracle por isso tinha faaldo q ia fazer linha a linha

J

Será que tem como depois de carregar os dados em um resultset, inserir um resultset inteiro ?

J

Consegui pegar os nome das colunas

ResultSet db2_rs = db2_stmt.executeQuery(db2_sql);

            ResultSetMetaData rsmd = db2_rs.getMetaData();
            
            int numberOfColumns = rsmd.getColumnCount();
            
            for (int cont = 1; cont < numberOfColumns; ++cont) {
                System.out.println(rsmd.getColumnLabel(cont));
            }
R

Acho que o que você procura é um como executar INSERTs em Batch, veja se é isso:

http://publib.boulder.ibm.com/infocenter/db2luw/v8/index.jsp?topic=/com.ibm.db2.udb.doc/ad/tjvbtupd.htm

J

rmendes08:
Acho que o que você procura é um como executar INSERTs em Batch, veja se é isso:

http://publib.boulder.ibm.com/infocenter/db2luw/v8/index.jsp?topic=/com.ibm.db2.udb.doc/ad/tjvbtupd.htm


nao seria isso…

J

me veio um pensamento aogra, como eu faruia pra usar aquela função do db2 para trnaformar uma tabela em txt e ai usar o sql loader do oracle

E

Você está indo pelo caminho certo: exportar uma tabela de um banco de dados para outro normalmente é tão simples quanto criar um CSV (consulte a documentação do DB2) e importá-lo no outro banco (consulte a documentação do Oracle).

J

O problema é que vi que o db2 export não eh um comando sql então pra fundar tenho q fazer uma procedure o arquivo vai Ser salvo lá no servidor do db2 copiar via FTP e importar com o sql loader do oracle

Criado 2 de janeiro de 2013
Ultima resposta 3 de jan. de 2013
Respostas 9
Participantes 4