• Sábado 4 de Mayo de 2024, 14:46

Autor Tema:  Insertar Registros Desde Otra Base Dato?  (Leído 1788 veces)

Beltran

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Insertar Registros Desde Otra Base Dato?
« en: Jueves 8 de Abril de 2004, 06:47 »
0
¿Como Insertar desde Otra Base Dato?

Hola soy Beltran, desde Rep. Dominicana (mi Isla), Programo en delphi desde hace dos años, usando archivos *.db,
el asunto es que esto migrando a interbase 6, y aqui viene el broblema.

Tengo dos semanas buscando el modo de insertar registros desde una base de datos a otra algo asi como:
Poder insertar registros que estan en una BaseDatos de una Terminal, hasta una tabla de otra BaseDatos en otra terminal.

Ejemplo:
Insert Into  'Tabla_1'  ('Pais', 'Capital')
Select From 'Tabla_2'  'Pais', 'Capital';

Donde 'Tabla_1'  pertenece una "base de datos" en un directorio Y
y 'Tabla_2 '  pertenece una "base de datos" en un directorio X

en formato *.db es sumamente facil, porque solo hay que incluir  el Path(ruta) junto con el nombre de la tabla, pero con Interbase
no lo logro y se que debe existir.

GatoSoft

  • Nuevo Miembro
  • *
  • Mensajes: 13
    • Ver Perfil
Re: Insertar Registros Desde Otra Base Dato?
« Respuesta #1 en: Martes 13 de Abril de 2004, 05:54 »
0
Bueno, por lo general este tipo de migraciones se hacen con componentes de base de datos asi:

tus tablas *.DB, las accesas con componetes TTable o Tquery de la paleta BDE y las tablas de la base de datos interbase las accesas con componetes de la paleta interbase IBtable o IBQuery

Pues lo que debes hacer es:

1. Cargar los datos de la tabla que vas a migrar en el TTable..

Table1.databaename='.\paises.db';
table1.open;

While not table1.eof do //Mientras no sea el fin de la tabla...
  begin

  IBQuery.close;
  IBQuery.sql.text:='Insert into paises(pais, capital) values(:ppais, :pcapital)'
  IBQuery1.parambyname('ppais').value:=Table1.fieldbyname('pais').value;
  IBQuery1.parambyname('pcapital').value:=Table1.fieldbyname('capital').value;
  IBQuery1.ExecSQL;

  table1.next; //se pasa al siguiente registro.
  end;


Es decir... debes recorrer la tabla original he ir insertando en la tabla destino, a través de los componetes...
========================
Gatosft [27.M.co]
Bucaramanga /Santander/Colombia
========================