Cómo volcar archivos de texto en VFP para convertirlos en archivos de base de datos estándar
crear tabla mytable (número de anuncio c(6), fecha de anuncio c(11), solicitante c(20))
AGREGAR DESDE mytxt.txt DELIMITADO CON espacio(1)
Leer registros de un archivo y agregarlos al final de la tabla actual.
APPEND FROM FileName | [FIELDS FieldList] [FOR lExpression]
[[TIPO] [DELIMITADO [CON Delimitador | CON delimitador de CARACTERES | DIF | MOD | PDOX |
SYLK | WK3 | WRK | cNombreHoja] | Si se proporciona un nombre de archivo sin extensión, el archivo predeterminado será una tabla de Visual FoxPro con una extensión .DBF. Si el archivo es una tabla de Visual FoxPro, los registros marcados para eliminar en la tabla también se agregarán a la tabla actual independientemente de SET DELETED.
Muestra el cuadro de diálogo Abrir, desde el cual puede elegir de qué tabla leer los registros.
FIELDS FieldList
Especifique qué datos de campo agregar.
FOR lExpression
Agrega un nuevo registro para cada registro en la tabla seleccionada actualmente para el cual lExpression es "verdadero" (.T.), hasta que se encuentre el final de la tabla actualmente seleccionada. alcanzó. Si se omite FOR, todo el registro del archivo fuente se agrega a la tabla actual.
TIPO
Especifica el tipo de archivo fuente. Si el tipo de archivo fuente especificado no es una tabla de Visual FoxPro, debe especificar el tipo de archivo sin incluir la palabra clave TYPE. Puede agregar información a una tabla leyendo información de varios tipos de archivos, incluidos archivos de texto ASCII delimitados, donde puede especificar delimitadores de campos.
Si la extensión del archivo fuente que se va a agregar no es la extensión predeterminada, el nombre del archivo fuente debe incluir la extensión del archivo. Por ejemplo, las hojas de cálculo de Microsoft Excel suelen tener una extensión .XLS. Si la hoja de cálculo de Microsoft Excel que desea agregar tiene una extensión distinta a .XLS, asegúrese de especificar la extensión.
Nota: Si los registros que se van a agregar provienen de una hoja de cálculo, los datos de la hoja de cálculo deben almacenarse en el orden de las filas principales en lugar de en el orden de las columnas principales, para que los datos de la hoja de cálculo adjunta se ajusten a la estructura de la tabla. .
DELIMITED
Especifica que el archivo de origen es un archivo de datos delimitados. Los archivos de datos delimitados son archivos de texto ASCII en los que cada registro termina con un retorno de carro y un avance de línea. El contenido de cada campo está separado por comas de forma predeterminada y los valores de los campos de caracteres también deben estar entre comillas. Por ejemplo:
"Smith",9999999,"TELEPHONE"
La extensión de todos los archivos de datos delimitados tiene por defecto el formato de datos .TXT.
Los datos de fecha se pueden importar desde un archivo delimitado si el formato de fecha es correcto. El formato predeterminado para las fechas es mm/dd/aa. También puede optar por unirse a Century Information. Los datos importados por Visual FoxPro (como el 25/12/95) no incluyen información del siglo, que por defecto es el siglo XX. El separador de fecha puede ser cualquier carácter no numérico, excepto el separador que separa los campos del archivo.
Visual FoxPro también puede importar datos de fecha en otros formatos de fecha si coinciden con los formatos que se pueden usar en SET DATE. Para importar fechas en un formato no predeterminado, debe ejecutar SET DATE antes de usar APPEND FROM para modificar la configuración del formato de datos. Para comprobar si el formato de fecha se puede importar correctamente, utilice la función CTOD(). Si la función CTOD() recibe este valor de fecha, los datos de fecha se importarán correctamente.
DELIMITADO CON Delimitador
Los campos de caracteres se identifican mediante Delimitador, no por comillas.
DELIMITADO CON BLANCO
Los campos están separados por espacios (BLANCO) en lugar de comas.
DELIMITADO CON TAB
Los campos están separados por tabulaciones (TAB), no por comas.
DELIMITADO CON CARÁCTER Delimitador
Los campos están separados por el Delimitador dado. Si Delimite es un punto y coma, debe estar entre comillas, porque las comillas tienen un significado especial en Visual FoxPro: cuando un comando se escribe en varias líneas, use un punto y coma como final de la línea. El delimitador puede estar EN BLANCO o TAB.
La cláusula CON Delimitador se puede utilizar junto con la cláusula CON CHARACTER. Por ejemplo, en el siguiente ejemplo, la fuente de los registros agregados es un archivo de texto. En este archivo de texto, los campos de caracteres están marcados con un guión bajo _ y los campos están separados por un asterisco *:
APENDAR DE mytxt.txt DELIMITADO CON _ CON CARACTER *
DIF;
Seleccione DIF para importar datos desde archivos VisiCalc .dif (formato de intercambio de datos). Los vectores (columnas) corresponden a los campos de la tabla seleccionada actualmente y las tuplas (filas) corresponden a los registros de la tabla. La extensión predeterminada para los archivos DIF es .DIF.
FW2
Utilice FW2 para importar datos de archivos creados por Framework II. La extensión predeterminada para los archivos FW2 es .FW2.
MOD
Seleccione MOD para importar datos desde archivos de Microsoft Multiplan versión 4.01. Los archivos MOD fueron creados por Microsoft Multiplan versión 4.01 y tienen una extensión predeterminada de .MOD.
PDOX
Utilice PDOX para importar datos desde archivos de bases de datos de Paradox versión 3.5 o 4.0. La extensión predeterminada para los nombres de archivos de Paradox es .DB.
RPD
Utilice RPD para importar datos de archivos creados con RapidFile versión 1.2. La extensión predeterminada para los nombres de archivos RapidFile es .RPD.
SDF
Seleccione SDF para importar datos desde archivos de formato de datos del sistema.
Un archivo SDF es un archivo de texto ASCII con registros de longitud fija y campos no delimitados terminados por retornos de carro y avances de línea. La extensión de archivo predeterminada es .TXT.
La conversión de fecha válida de un archivo SDF a una tabla de Visual FoxPro requiere que los datos se guarden en formato AAAAMMDD.
Si el formato de fecha se guarda en un formato ambiguo, debe asignar la columna de fecha a una columna de caracteres del ancho apropiado para que pueda inspeccionar el valor convertido y corregir el programa de conversión para crear datos de fecha con el formato correcto. .
SYLK
Seleccione SYLK para importar datos desde archivos de formato de intercambio SYLK (enlace simbólico). Los archivos SYLK se utilizan en Microsoft MultiPlan. Las columnas del archivo SYLK corresponden a campos de una tabla de Visual FoxPro y las filas corresponden a registros de la tabla. Los archivos SYLK no tienen extensión.
WK1
Seleccione WK1 para importar datos desde hojas de cálculo de Lotus 1-2-3 versión 2.x. Cada columna de la hoja de cálculo es un campo de la tabla y cada fila es un registro de la tabla. Las hojas de cálculo creadas con Lotus 1-2-3 versión 2.x tienen una extensión WK1.
WK3
WK3 se puede utilizar para importar datos de la hoja de cálculo Lotus1-2-3. Cada columna de la hoja de cálculo es un campo de la tabla y cada fila es un registro de. la mesa. Las hojas de cálculo creadas por Lotus1-2-3 versión 3.X tienen una extensión .WK3.
WKS
Utilice WKS para importar datos desde hojas de cálculo Lotus 1-2-3 versión 1-A. Cada columna de la hoja de cálculo es un campo de la tabla y cada fila es un registro de la tabla. Lotus1-2-3 versión 1-A crea archivos con una extensión .WKS.
WR1
Elija WR1 para importar datos desde una hoja de cálculo de Lotus Symphony versión 1.1 o 1.2. Cada columna de la hoja de cálculo es un campo de la tabla y cada fila es un registro de la tabla. Las hojas de cálculo creadas con Symphony versión 1.1 o 1.2 tienen una extensión .WR1.
WRK
Utilice WRK para importar datos desde hojas de cálculo de Lotus Symphony versión 1.0. Cada columna de la hoja de cálculo es un campo de la tabla y cada fila es un registro de la tabla. Las hojas de cálculo creadas con Symphony versión 1.0 tienen una extensión .WRK.
CSV
Utiliza CVS para importar datos de un archivo con valores separados por comas. La primera línea de un archivo CSV es el nombre del campo; este nombre de campo se ignora al importar el archivo.
XLS
Utilice XLS para importar datos desde una hoja de cálculo de Microsoft Excel. Cada columna de la hoja de cálculo es un campo de la tabla y cada fila es un registro de la tabla. Las hojas de trabajo creadas por Microsoft Excel tienen una extensión .XLS.
XL5
Seleccione XL5 para importar datos desde Microsoft Excel versión 5.0. Cada columna de la hoja de cálculo es un campo de la tabla y cada fila es un registro de la tabla. Los archivos de hojas de trabajo tienen una extensión .XLS.
Si se omite la cláusula SHEET, se importarán los datos de la Hoja1. Para importar datos de una hoja de trabajo específica, incluya la palabra clave SHEET y especifique el nombre de la hoja de trabajo usando cSheetName.
XL8
Contiene datos para que XL8 los importe rápidamente a Microsoft Excel 97. Las columnas de la hoja de cálculo se convierten en campos de la tabla; las filas de la hoja de cálculo se convierten en registros de la tabla.
Los archivos de hoja de cálculo creados en Microsoft Excel tienen una extensión .xls.
Si se omite la cláusula SHEET, se importarán los datos de la Hoja1. Para importar datos de una hoja de trabajo específica, incluya la palabra clave SHEET y especifique el nombre de la hoja de trabajo usando cSheetName.
AS nCodePage
Especifique la página de códigos de la tabla fuente o del archivo fuente. Visual FoxPro copia el contenido de la tabla o archivo de origen y convierte automáticamente los datos a la página de códigos de la tabla actual a medida que se copia.
Visual FoxPro generará un mensaje de error si no se puede utilizar el valor nCodePage especificado. Puede utilizar la función GETCP() para mostrar el cuadro de diálogo Página de códigos, en el que puede especificar la página de códigos para la tabla o archivo adjunto. Si se omite la cláusula AS nCodePage y Visual FoxPro no puede determinar la página de códigos de la tabla o archivo de origen, Visual FoxPro copia el contenido de la tabla o del archivo de origen y convierte automáticamente los datos a la página de códigos de Visual FoxPro actual a medida que copia los datos. Si SET CPDIALOG está activado, las tablas en el espacio de trabajo seleccionado actualmente están etiquetadas con páginas de códigos. Si está leyendo datos de una tabla que no tiene una etiqueta de página de códigos y los agrega a la tabla, aparece el cuadro de diálogo Página de códigos donde puede seleccionar la página de códigos para la tabla. La página de códigos actual de Visual FoxPro se puede configurar mediante la función CPCURRENT().
Si se omite la cláusula AS nCodePage y Visual FoxPro puede determinar la página de códigos de la tabla o archivo al que se agrega el registro, Visual FoxPro copiará el contenido de la tabla o archivo y copiará automáticamente los datos. a medida que se copia. Convierte a la página de códigos de la tabla seleccionada actualmente.
Si nCodePage es cero, Visual FoxPro supone que la página de códigos de la tabla y el archivo al que se agregan los registros es la misma que la página de códigos de la tabla seleccionada actualmente y no realiza la conversión de la página de códigos.
Nota
Si el archivo al que está agregando datos es una tabla de Visual FoxPro o una tabla creada en una versión anterior de FoxPro, su extensión es .DBF. Si su extensión no es .DBF, deberá especificar la extensión. Si el archivo no es una tabla de Visual FoxPro o una tabla creada por una versión anterior de FoxPro, también debe especificar el tipo de archivo.
Antes de agregar registros a una tabla que contiene campos de notas creados con DBASE IV o DBASE V, primero debe abrir la tabla en Visual FoxPro usando el comando USE. Cuando se le solicite, pregunte si desea convertir el archivo. , seleccione "Sí".
Si lee registros de una versión anterior de la tabla FoxPro o de una tabla de Visual FoxPro, la tabla se puede abrir en otro espacio de trabajo. Para los registros con marcas de eliminación en la tabla de origen, una vez que se agreguen a la tabla, las marcas de eliminación se eliminarán.
Utilice la función DBF() para agregar datos de una tabla temporal de solo lectura creada usando el comando SELECT - SQL. Puede incluir el nombre de la tabla temporal en la función DBF() de la siguiente manera:
APPEND FROM DBF('lt;nombre de la tabla temporal>')
Si la tabla de destino usa autoincrementando, APPEND FROM fallará cuando AUTOINCERROR esté configurado en ON, a menos que la columna AUTOINC esté predeterminada en la opción FIELDS.
Configurar AUTOINCERROR en OFF o desactivar el incremento automático con CURSORSETPROP() permite APPEND FROM con éxito. El campo de incremento automático de la tabla de destino o un campo que se incrementa en el valor especificado y el valor de la tabla de origen no se aplican.
Ejemplo
El siguiente ejemplo abre la tabla cliente, copia su estructura en la copia de seguridad de la tabla y abre la copia de seguridad de la tabla. Luego, Visual FoxPro agrega los registros que satisfacen "finlandia" en la tabla de clientes a la tabla de respaldo. Luego, estos registros se copian en un nuevo archivo delimitado temp.txt.
CERRAR BASES DE DATOS
ABRIR BASE DE DATOS (HOME(2) 'Datos\testdata')
USE amp cliente; p>COPIAR ESTRUCTURA A la copia de seguridad
UTILIZAR copia de seguridad
AGREGAR DEL cliente PARA el país = 'Finlandia'
COPIAR AL TIPO temporal DELIMITADO
MODIFICAR ARCHIVO temp.txt
UTILIZAR
BORRAR ARCHIVO backup.dbf
BORRAR ARCHIVO temp.txt