Es posible copiar todos los campos de un registro ?

Post Reply
BenD
Posts: 29
Joined: Fri Jan 18, 2008 3:48 pm

Es posible copiar todos los campos de un registro ?

Post by BenD »

Hola amigos

Tengo unas bases de datos que tienen cada una entre 70 y 80 campos, lo que hace un poco tediosa las labores de crear archivos temporales para ciertos fines.

Hay alguna instruccion que me copie todos _ del registro actual a otra base de datos (que obviamente tiene la misma estructura) o cual es la forma de hacerlo para no tener que usar las 60 asignaciones cada vez


Gracias.
User avatar
Armando
Posts: 2479
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Contact:

Post by Armando »

BenD:

Dale una revisada a la sentencia APPEND FROM creo que te va a servir

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
BenD
Posts: 29
Joined: Fri Jan 18, 2008 3:48 pm

Post by BenD »

Gracias por tu interes Armando, pero para poder utilizar el APPEND FROM me tocaría cerrar las bases de datos y no es una opcion viable para mi en este momento, debido a que son utilizadas por otros modulos del sistema.

Los registros que quiero copiar al archivo temporal, provienen de una consulta SQL ADS.


Oppps...que pena, no había visto el modificador CONNECTION....parece que esa es la solucion a mi problema

Gracias por tu ayuda.....
User avatar
Armando
Posts: 2479
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Contact:

Post by Armando »

BenD:

Tomado del manual de clipper
En un entorno de red, APPEND FROM no requiere que el fichero actual de
base de datos se utilice en modo exclusivo o se bloquee con FLOCK(). A
medida que se añaden registros, CA-Clipper regula automáticamente los
conflictos de utilización de los nuevos registros.
Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
antolin
Posts: 475
Joined: Thu May 10, 2007 8:30 pm
Location: Sevilla

Post by antolin »

Si lo que quieres es copiar todos los registros a una nueva base de datos temporal, simplemente COPY FILE o similar. Si lo quieres es copiar algunos registros, revisa la clase DATABASE puedes intentar hacer algo parecido al método Modified()
Peaaaaaso de foro...
User avatar
pymsoft
Posts: 383
Joined: Tue Oct 11, 2005 1:01 pm
Location: Savona - Italia
Contact:

Post by pymsoft »

BenD:

Prueba esto:

Code: Select all

...
..
   cDBF := "midbftemporal.dbf"
   aStruct := c_movim->( dbStruct() )
   //AADD( aStruct, { "COD_TAG", "C", 10, 0  } )

   DbCreate( cDBF, aStruct )

..
..

cdf1->( dbAppend() )
FOR i:=1 to fcount()
  cdf1->( fieldput( i,  cdf2->fieldget(i) ) ) )
NEXT



...
..
Lo escribi al vuelo, espero que te funcione.

Saludos
Pedro Gonzalez
BenD
Posts: 29
Joined: Fri Jan 18, 2008 3:48 pm

Post by BenD »

Tomé esto del manual de xharbour

Code: Select all

CONNECTION <nConnection>
This option specifies a numeric server connection handle. It is returned by a server connection function which establishes a connection to a database server, such as SR_AddConnection() of the xHarbour Builder SQLRDD. When CONNECTION is used, the APPEND FROM command appends data from a database on the server.
Mi pregunta es cual es la sintaxis correcta para su uso..
Por ejemplo tengo:
1. Motor de base de datos: ADS v8.1
2. El resultado de una consulta sql en un alias : aliSQL
3. Un archivo con la estructura correcta para recibir los datos de la consulta: archi01

Como sería la sintaxis del APPEND FROM ?
Post Reply