Создание файлов формата
Microsoft SQL Server позволяет использовать файлы формата с утилитой bcp, в команде BULK INSERT и в функции OPENROWSET для импорта текстовых данных.
gsqlcmd позволяет создавать такие файлы формата.
Также утилита позволяет использовать файлы формата в опции /formatFile для переопределения имен столбцов.
Например, файл aapl.csv содержит следующие строки:
symbol;time;open;high;low;close;volume AAPL;2019-04-09 13:30:00;200.3200;200.4500;199.68;200.3800;1332001 AAPL;2019-04-09 13:31:00;200.3726;200.8850;200.32;200.6920;351343
Вы можете сгенерировать файл формата, используя режим make-fmt:
gsqlcmd make-fmt aapl.csv yahoo1m.fmt
Выходной файл yahoo1m.fmt будет иметь следующее содержимое:
9.0 7 1 SQLCHAR 0 255 ";" 1 "symbol" "" 2 SQLCHAR 0 255 ";" 2 "time" "" 3 SQLCHAR 0 255 ";" 3 "open" "" 4 SQLCHAR 0 255 ";" 4 "high" "" 5 SQLCHAR 0 255 ";" 5 "low" "" 6 SQLCHAR 0 255 ";" 6 "close" "" 7 SQLCHAR 0 255 "\r\n" 7 "volume" ""
gsqlcmd генерирует файла формата non-XML.
Вы можете переименовать столбцы в файле и использовать его с Microsoft SQL Server и gsqlcmd в опции /formatFile.