Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Copiar Registro (https://www.clubdelphi.com/foros/showthread.php?t=30082)

Sir_Roc 08-02-2006 15:50:08

Copiar Registro
 
holaz... tengo un dramita ke no se como se copia un registro de una tabla a otra, puedo hacer el bucle while, pero como pasar un registro a otra no...

kien me ayuda.?

gracias

nidia 08-02-2006 20:56:59

bueno no se si quieres pasar todos los registros que te genera una consulta o solo algunos registros. para darme a entender mejor aqui te paso un ejemplo, haber si te sirve.

En consulta en sql
insert into tabla_temporal(campo1, campo2, campo3)
select campo1, campo2, campo3 from tablas where condicion

con While de tabla1 a tabla2:
tabla1.first;
while not tabla.eof do
begin
tabla2.append;
tabla2.FieldByName ('valor').asfloat := valor.Field.Value ;
tabla2.FieldByName ('fecha').asdatetime:= fecha.field.value;
tabla2.post;
end;
para este caso, valor y fecha son campos que estan relacionados con la tabla1,
espero darme a entender y que te sirva :)

nidia 08-02-2006 20:59:27

hooo me falto que debajo de tabla2.post, debe ir tabla1.next, para que avance al siguiente registro.

con el while este estas copiando toda la tabla1 a la tabla 2, ya tu le pones las condiciones que necesites o a partir de que registro o lo que tu necesites ok.

fabianbbg 08-02-2006 21:03:25

hola:
O para no escribir todos los campos:

Código Delphi [-]
tabla2.append;
for i:=0 to tabla1.fieldcount-1 do
  tabla2.fields[i].value:=tabla1.fields[i].asVariant;

tabla2.post;
Por supuesto si las tablas tienen las misma estructura.

Suerte!

Sir_Roc 08-02-2006 23:31:53

wenaz
 
si, estan buenas las respuestas...pero tengo una duda...

si kiero pasar el valor de una tabla a una variable..?

como lo hago?

fabianbbg 09-02-2006 00:16:36

Depende de lo que quieras hacer..
 
Hola:

Cita:

Empezado por Sir_Roc
si kiero pasar el valor de una tabla a una variable..?
como lo hago?


bueno.. si por ejemplo tenes variables de tipos distintos.. le vas especificando de que te tipo es la variable.. y el dataset hace la conversion .El tipo de variable por supuesto depende de lo que quieras hacer luego..

Código Delphi [-]
var
    varStr         :string;
    varInteger   :integer;
    VarFecha    :TDateTime;
    
begin
    varStr      :=Tabla1.fieldbyname('nombre').asString;
    VarInteger:=Tabla1.fieldbyname('Telefono').asInteger;
    varFecha  :=Tabla1.fieldbyname('FEch_nac').asDateTime;

end;

Guarda con los Errores..

Saludos!


La franja horaria es GMT +2. Ahora son las 10:30:14.

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