Microsoft SQL Server
Importación a granel
Buscar..
INSERTO A GRANEL con opciones
Puede personalizar las reglas de análisis utilizando diferentes opciones en la cláusula WITH:
BULK INSERT People
FROM 'f:\orders\people.csv'
WITH ( CODEPAGE = '65001',
FIELDTERMINATOR =',',
ROWTERMINATOR ='\n'
);
En este ejemplo, CODEPAGE especifica que un archivo fuente en el archivo UTF-8, y los TERMINATORS son coma y nueva línea.
INSERTO A GRANEL
El comando BULK INSERT se puede usar para importar archivos a SQL Server:
BULK INSERT People
FROM 'f:\orders\people.csv'
El comando BULK INSERT asignará columnas en archivos con columnas en la tabla de destino.
Leyendo todo el contenido del archivo usando OPENROWSET (BULK)
Puede leer el contenido del archivo usando la función OPENROWSET (BULK) y almacenar el contenido en alguna tabla:
INSERT INTO myTable(content)
SELECT BulkColumn
FROM OPENROWSET(BULK N'C:\Text1.txt', SINGLE_BLOB) AS Document;
La opción SINGLE_BLOB leerá todo el contenido de un archivo como una sola celda.
Lea el archivo utilizando OPENROWSET (BULK) y el archivo de formato
Yu puede definir el formato del archivo que se importará usando la opción FORMATFILE:
INSERT INTO mytable
SELECT a.*
FROM OPENROWSET(BULK 'c:\test\values.txt',
FORMATFILE = 'c:\test\values.fmt') AS a;
El archivo de formato, format_file.fmt, describe las columnas en values.txt:
9.0
2
1 SQLCHAR 0 10 "\t" 1 ID SQL_Latin1_General_Cp437_BIN
2 SQLCHAR 0 40 "\r\n" 2 Description SQL_Latin1_General_Cp437_BIN
Lee el archivo json usando OPENROWSET (BULK)
Puede usar OPENROWSET para leer el contenido del archivo y pasarlo a alguna otra función que analice los resultados.
El siguiente ejemplo muestra cómo leer todo el contenido del archivo JSON utilizando OPENROWSET (BULK) y luego proporcionar BulkColumn a la función OPENJSON que analizará JSON y devolverá las columnas:
SELECT book.*
FROM OPENROWSET (BULK 'C:\JSON\Books\books.json', SINGLE_CLOB) as j
CROSS APPLY OPENJSON(BulkColumn)
WITH( id nvarchar(100), name nvarchar(100), price float,
pages int, author nvarchar(100)) AS book