Microsoft SQL Server
BULK importeren
Zoeken…
BULK INSERT met opties
U kunt parseringsregels aanpassen met behulp van verschillende opties in de clausule WITH:
BULK INSERT People
FROM 'f:\orders\people.csv'
WITH ( CODEPAGE = '65001',
FIELDTERMINATOR =',',
ROWTERMINATOR ='\n'
);
In dit voorbeeld geeft CODEPAGE aan dat een bronbestand in UTF-8-bestand en TERMINATORS coma en nieuwe regel zijn.
BULK INVOEGEN
BULK INSERT-opdracht kan worden gebruikt om een bestand in SQL Server te importeren:
BULK INSERT People
FROM 'f:\orders\people.csv'
BULK INSERT commando zal kolommen in bestanden toewijzen met kolommen in doeltabel.
Volledige inhoud van het bestand lezen met OPENROWSET (BULK)
U kunt de inhoud van een bestand lezen met de functie OPENROWSET (BULK) en inhoud in een tabel opslaan:
INSERT INTO myTable(content)
SELECT BulkColumn
FROM OPENROWSET(BULK N'C:\Text1.txt', SINGLE_BLOB) AS Document;
De optie SINGLE_BLOB leest de volledige inhoud van een bestand als een enkele cel.
Lees het bestand met OPENROWSET (BULK) en maak het bestand op
Yu kan de indeling bepalen van het bestand dat wordt geïmporteerd met de optie FORMATFILE:
INSERT INTO mytable
SELECT a.*
FROM OPENROWSET(BULK 'c:\test\values.txt',
FORMATFILE = 'c:\test\values.fmt') AS a;
Het formaatbestand, format_file.fmt, beschrijft de kolommen in waarden.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
Json-bestand lezen met OPENROWSET (BULK)
U kunt OPENROWSET gebruiken om de inhoud van het bestand te lezen en door te geven aan een andere functie die de resultaten zal parseren.
In het volgende voorbeeld wordt getoond hoe u de volledige inhoud van het JSON-bestand kunt lezen met OPENROWSET (BULK) en vervolgens de functie BulkColumn naar OPENJSON kunt geven die JSON zal parseren en kolommen retourneert:
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