Resumen Importar datos a SQL Server

Copia una tabla de una base de datos a / desde un fichero en un formato especificado por el usuario.

Sintaxis :

bcp [[database_name.]owner.]table_name {in | out} datafile [/m
maxerrors] [/f formatfile] [/e errfile] [/F firstrow] [/L lastrow] [/b
batchsize] [/n] [/c] [/E][/t field_term] [/r row_term] [/i inputfile]
[/o outputfile] /U login_id [/P password] [/S servername] [/v] [/a
packet_size]

donde

database_name

Especifica la base de datos. Si la tabla copiada está en tu base de datos por defecto, este parámetro es opcional.

owner

Nombre del propietario. Este nombre es opcional si eres el propietario de la tabla copiada. Este parámetro es opcional. Si no se especifica propietario y tú no eres el propietario de la tabla el programa no se ejecuta.

table_name

Especifica el nombre de la tabla a copiar.

in | out

Indica la dirección de la copia. La opción in copia del fichero a la base de datos; la opción out copia de la base de datos al fichero.

datafile

Es el nombre completo (con path) del fichero cuando se copia la tabla a / desde un fichero en el disco duro o un único disquete. Puede tener desde 1 hasta 255 caracteres. Cuando se copia una tabla a / desde múltiples disquetes este parámetro contendrá sólo el nombre de la unidad (por ejemplo A:).

/m maxerrors

Es el máximo número de errores que pueden ocurrir antes de cancelar la copia. Cada fila que no puede ser copiada por bcp es ignorada y contada como un error. Si no se incluye esta opción, el valor por defecto es 10.

/f formatfile

Es el nombre completo de un fichero que contiene las respuestas de un uso previo de bcp en esta misma tabla; la creación del fichero de formato es opcional. Usa esta opción si ya tienes creado un fichero de formato que quieres usar. Después de que contestes las preguntas de formato, bcp te pregunta si quieres guardar las respuestas en un fichero de formato. El nombre por defecto es BCP.FMT. Si no se emplea esta opción, bcp te preguntará la información sobre el formato.

/e errfile

Es el nombre completo del fichero de errores donde bcp guardará las filas que no pueda transferir del fichero a la base de datos. Los mensajes de error del bcp irán a la estación de trabajo del usuario. Si no se emplea esta opción no se creará el fichero de errores.

/F firstrow

Especifica el número de la primera fila a copiar (por defecto será la primera fila).

/L lastrow

Especifica el número de la última fila a copia (por defecto será la última fila).

/b batchsize

Especifica el número de filas a copiar por cada lote (por defecto copia todas las filas en un lote).

/n

Efectúa la operación de copia empleando los tipos de datos de la base de datos como por defecto. Esta opción no pregunta por cada campo; usa los valores por defecto.

/c

Efectúa la operación de copia con el tipo de datos carácter como valor por defecto. Esta opción no pregunta por cada campo; usa el carácter como tipo de almacenamiento por defecto, sin prefijos, \t (tab) como separador de campos y \n (new line) como separador de filas.

/E

Es empleado cuando hay valores identity (contador) en la tabla a importar.
Cuando se importan datos, se le asigna temporalmente un valor 0 a una columna identity. Mientras se insertan filas en la tabla, SQL Server asigna valores únicos teniendo en cuenta los incrementos especificados durante la creación de la tabla. Use la opción /E cuando los valores identity ya estén en el fichero.
Si prefieres los valores identity generados por SQL Server no coloques las columnas con valores identity en el fichero.

/t field_term

Separador de campos por defecto.

/r row_term

Separador de filas por defecto.

/i inputfile

Nombre del fichero que redirige la entrada a bcp.

/o outputfile

Nombre del fichero que recibe la salida redirigida de bcp.

/U login_id

Identificador de usuario.

/P password

Password del usuario. Si no se emplea esta opción, bcp preguntará la password. Si se emplea esta opción al final de la línea de comandos sin poner ninguna password, bcp emplea la password por defecto (NULL).

/S servername

Especifica el SQL Server al que queremos conectarnos. El servername es el nombre del servidor en la red. Esta opicón es necesaria si estás ejecutando bcp desde un ordenador de la red.

/v

Devuelve la versión de la DB-Library.

/a packet_size

Es el número de bytes, por cada paquete de red, enviado a y desde el servidor.
Esta opción de configuración del servidor se puede establecer usando SQL Enterprise Manager (o el procedimiento almacenado sp_configure system). De todas formas, esta opción puede modificarse para una tarnsferencia en concreto con el parámetro /a del bcp. Los valores válidos para packet_size van desde 512 hasta 65535. El valor por defecto para el servidor es 4096; el valor por defecto para la versión de NT del bcp es 4096; el valor por defecto para MS-DOS es 512.
Incrementar el tamaño del paquete puede mejorar el rendimiento de grandes operaciones de copia. Las pruebas de Microsoft indican que de 4096 a 8192 son normalmente los valores mejores para grandes operaciones de copia. Si se pide un paquete mayor pero no puede ser garantizado, el cliente asumirá por defecto 512. Las estadísticas de rendimiento que se generan al final de la ejecución del bcp muestran el tamaño de paquete empleado.


    -----Original Message-----
    From:    Carlos Chaine
    Sent:    Monday, October 05, 1998 8:36 AM
    To:    vb-esp@ccc.uba.ar
    Subject:    (VB-ESP) Importar datos a SQL Server

     Alguno conoce una forma rapida de importar datos desde un
archivo de
    texto a SQL Server.
     Con el INSERT SQL, resulta demasiado lento para una tabla de
1.200.000
    registros.
     Cada linea del archivo es un registro. Uso la funcion Mid para
separar
    los campos.

     Acepto cualquier consejo. Gracias.

     Chaine Carlos Daniel.



Resumen Resumen

Visual Basic Página de Visual Basic

Página principal Página principal

www.jrubi.com