Ricerca…


INSERIMENTO BULK con opzioni

È possibile personalizzare le regole di analisi utilizzando diverse opzioni nella clausola WITH:

BULK INSERT People
FROM 'f:\orders\people.csv'  
WITH  (  CODEPAGE = '65001',  
         FIELDTERMINATOR =',',  
         ROWTERMINATOR ='\n'  
      ); 

In questo esempio, CODEPAGE specifica che un file di origine nel file UTF-8 e TERMINATORS sono in coma e una nuova riga.

INSERIMENTO BULK

Il comando BULK INSERT può essere utilizzato per importare file in SQL Server:

BULK INSERT People
FROM 'f:\orders\people.csv'  

Il comando BULK INSERT eseguirà il mapping delle colonne nei file con colonne nella tabella di destinazione.

Leggere l'intero contenuto del file usando OPENROWSET (BULK)

È possibile leggere il contenuto del file utilizzando la funzione OPENROWSET (BULK) e memorizzare il contenuto in alcune tabelle:

INSERT INTO myTable(content)   
   SELECT BulkColumn
          FROM OPENROWSET(BULK N'C:\Text1.txt', SINGLE_BLOB) AS Document; 

L'opzione SINGLE_BLOB leggerà l'intero contenuto da un file come singola cella.

Leggi il file usando OPENROWSET (BULK) e formatta il file

Yu può definire il formato del file che verrà importato usando l'opzione FORMATFILE:

INSERT INTO mytable
SELECT a.* 
FROM OPENROWSET(BULK 'c:\test\values.txt',   
   FORMATFILE = 'c:\test\values.fmt') AS a;  

Il file di formato, format_file.fmt, descrive le colonne in 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  

Leggi il file json usando OPENROWSET (BULK)

È possibile utilizzare OPENROWSET per leggere il contenuto del file e passarlo ad altre funzioni che analizzeranno i risultati.

L'esempio seguente mostra hot per leggere l'intero contenuto del file JSON utilizzando OPENROWSET (BULK) e quindi fornisce BulkColumn alla funzione OPENJSON che analizzerà JSON e restituirà le colonne:

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
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow