Microsoft SQL Server
BULK-import
Sök…
BULK INSERT med alternativ
Du kan anpassa analysregler med olika alternativ i MED-klausulen:
BULK INSERT People
FROM 'f:\orders\people.csv'
WITH ( CODEPAGE = '65001',
FIELDTERMINATOR =',',
ROWTERMINATOR ='\n'
);
I det här exemplet specificerar CODEPAGE att en källfil i UTF-8-fil och TERMINATORS är koma och ny rad.
BULK INSERT
BULK INSERT-kommando kan användas för att importera fil till SQL Server:
BULK INSERT People
FROM 'f:\orders\people.csv'
Kommandot BULK INSERT kommer att kartlägga kolumner i filer med kolumner i måltabellen.
Läser hela innehållet i filen med OPENROWSET (BULK)
Du kan läsa filens innehåll med OPENROWSET (BULK) -funktion och lagra innehåll i någon tabell:
INSERT INTO myTable(content)
SELECT BulkColumn
FROM OPENROWSET(BULK N'C:\Text1.txt', SINGLE_BLOB) AS Document;
Alternativet SINGLE_BLOB läser hela innehållet från en fil som en enda cell.
Läs fil med OPENROWSET (BULK) och formatfil
Yu kan definiera formatet för filen som importeras med alternativet FORMATFIL:
INSERT INTO mytable
SELECT a.*
FROM OPENROWSET(BULK 'c:\test\values.txt',
FORMATFILE = 'c:\test\values.fmt') AS a;
Formatfilen, format_fil.fmt, beskriver kolumnerna i värden.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
Läs json-fil med OPENROWSET (BULK)
Du kan använda OPENROWSET för att läsa innehåll i filen och skicka den till någon annan funktion som kommer att analysera resultat.
Följande exempel visar varmt att läsa hela innehållet i JSON-filen med OPENROWSET (BULK) och sedan ge BulkColumn till OPENJSON-funktionen som kommer att analysera JSON och returnera kolumner:
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