Szukaj…


WSTAWKA LUZEM z opcjami

Można dostosować reguły analizowania przy użyciu różnych opcji w klauzuli WITH:

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

W tym przykładzie CODEPAGE określa, że plik źródłowy w pliku UTF-8, a TERMINATORY to śpiączka i nowa linia.

WSTAWKA LUZEM

Komendy BULK INSERT można użyć do zaimportowania pliku do programu SQL Server:

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

Komenda BULK INSERT zmapuje kolumny w plikach z kolumnami w tabeli docelowej.

Odczytywanie całej zawartości pliku za pomocą OPENROWSET (BULK)

Możesz odczytać zawartość pliku za pomocą funkcji OPENROWSET (BULK) i zapisać zawartość w tabeli:

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

Opcja SINGLE_BLOB odczyta całą zawartość z pliku jako pojedynczą komórkę.

Odczytaj plik za pomocą OPENROWSET (BULK) i sformatuj plik

Możesz zdefiniować format pliku, który zostanie zaimportowany za pomocą opcji FORMATFILE:

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

Plik formatu, format_file.fmt, opisuje kolumny w pliku 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  

Odczytaj plik json za pomocą OPENROWSET (BULK)

Możesz użyć OPENROWSET, aby odczytać zawartość pliku i przekazać ją do innej funkcji, która przeanalizuje wyniki.

Poniższy przykład pokazuje, jak można odczytywać całą zawartość pliku JSON przy użyciu OPENROWSET (BULK), a następnie podać funkcję BulkColumn do funkcji OPENJSON, która będzie analizować JSON i zwracać kolumny:

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
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow