Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   pasar datos de tabla a tabla? (https://www.clubdelphi.com/foros/showthread.php?t=11484)

danytorres 15-06-2004 16:46:15

pasar datos de tabla a tabla?
 
hola a todos los del foro. el problema que tengo es que pseeo dos tabla una es Transaccions y la otra es Transaccion
lo que deseo es pasar los campos de la tabla transaccions a transaccion sin utilizar sql solo con
codigo Delphi de que forma lo hago. ? :confused:

eduarcol 15-06-2004 16:52:23

Si los dos campos son iguales y utilizas el BDE puedes utilizar el componente TBatchMove

danytorres 15-06-2004 17:26:13

como uso ese componente ?

eduarcol 15-06-2004 17:42:20

Facil, buscando la ayuda de delpi

Cita:

Empezado por Ayuda de Delphi
TBatchMove enables applications to perform database operations on groups of records or entire tables.

Unit

dbtables

Description

Instantiate a TBatchMove object to

Add the records in a dataset to a database table.
Delete the records in a dataset from a database table.
Copy a dataset to create a new database table or overwrite an existing table.

Set the properties of the TBatchMove object to specify the desired operation. Call the Execute method to perform the actual operation. TTable objects can also perform the same batch operations, but only with the options specified by the default TBatchMove property values.

TBatchMove has several properties that instruct the Borland Database Engine (BDE) how to handle problems that occur when executing the batch operation. Additionally, applications can use a TBDECallback object to further refine the response to problems that arise.


danytorres 15-06-2004 18:30:11

otra forma que no sea con el BatchMove1 :confused:

guillotmarc 15-06-2004 18:40:17

Hola.

Código:

while not Transacciones.Eof do begin
  Transaccion.Insert;
  Transaccion.FieldValues['Nombre'] := Transacciones.FieldValues['Nombre'];
  Transaccion.FieldValues['Apellidos'] := Transacciones.FieldValues['Apellidos'];
  ...
  Transaccion.Post;
  Transacciones.Next;
end;

Si quieres una forma mejor, dinos que Base de Datos utilizas y con que componentes de acceso te conectas, y quizá haya una específica.

Saludos.

__marcsc 15-06-2004 18:41:33

Suponiendo que las tablas tengan la misma estructura, y obviando algunas validaciones que dependerán mucho de lo que tengas que hacer...

Código Delphi [-]
procedure CopiarTabla(Origen, Destino: TDataSet);
var
  i: Integer;
begin
  Origen.Open;
  Destino.Open;
  Origen.First;
  while not Origen.Eof do
  begin
     Destino.Insert;
     for i:= 0 to Origen.Fields.Count -1 do
        Destino.Fields[i].Value:= Origen.Fields[i].Value;
     Destino.Post;
     Origen.Next;
  end;
end;


La franja horaria es GMT +2. Ahora son las 01:58:06.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi