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


Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow