Настройка вывода

Настройка вывода

Содержание:

Общие параметры

gsqlcmd позволяет настраивать вывод в обычный текст, CSV, HTML, XML и JSON для режимов exec и convert.

Расширение выходного файла определяет формат вывода по умолчанию:

*.txt  - text
*.csv  - CSV
*.htm  - HTML
*.html - HTML
*.xml  - XML
*.json - JSON

Используйте опции /asText, /asCsv, /asHtml, /asXml и /asJson для явного указания формата вывода.

Используйте следующие опции для определения параметров вывода:

/dateFormat=<format>
/dateTimeFormat=<format>
/timeFormat=<format>

/outputCodepage=<codepage>
/outputCulture=<name>
/noBOM

Используйте опцию /noHeaders, чтобы запретить добавление имен выходных столбцов.

Например:

gsqlcmd convert "SELECT loc FROM sitemap.xml" sitemap.txt /noHeaders

Используйте опции /addRowNum и /rowNumBase, чтобы добавить в вывод столбец с номером строки.

Например:

gsqlcmd exec db dbo.data /AddRowNum /RowNumBase=1

Используйте опцию /add с фиксированными значениями и функции, чтобы добавлять новые столбцы к выходным данным.

Например:

gsqlcmd convert test.csv output.csv /add=Symbol=AAPL;Date=Date()

Настройка вывода в CSV

Вы можете найти полезными следующие опции, используемые при выводе в CSV:

/escapeChar=<char>
/[[output]Separator](formatting-options.htm#option-outputSeparator)=<separator> | Tab
/quoteChar=<char>

Например:

gsqlcmd convert http://www.nasdaq.com/symbol/aapl/dividend-history dividends.csv /quoteChar= /separator=,

Настройка вывода в виде текста

gsqlcmd не имеет специальных опций для вывода простого текста. Используйте общие параметры, описанные выше.

Настройка вывода в HTML

gsqlcmd поддерживает дополнительные параметры шаблона, специфичные для вывода в HTML:

/noTemplate
/placeholder=<placeholder>
/template=<file name>
/title=<title>

Основная команда создает документ HTML с использованием шаблона по умолчанию.

Например:

gsqlcmd convert data.csv data.htm

Вы можете указать шаблон, заполнитель вывода и заголовок следующим образом:

gsqlcmd convert data.csv data.htm /template=sales_template.htm /placeholder=year_sales "/title=Отчет о продажах"

Чтобы создать заполнитель в HTML-шаблоне, используйте вставку в фигурных скобках, например {year_sales}.

{title} - это встроенный заполнитель, который получает значение опции /title.

Используйте опцию /noTemplate, чтобы отключить использование шаблона.

Настройка вывода в XML

Вы можете использовать простую команду для получения XML-документа.

Например:

gsqlcmd convert test.csv test.xml

К примеру, test.csv содержит следующие строки:

id;f1;f2
1;data11;data12
2;data21;data22
3;data31;data32

Команда преобразует данные к следующему виду:

<?xml version="1.0" encoding="UTF-8"?>
<table>
<row><id>1</id><f1>data11</f1><f2>data12</f2></row>
<row><id>2</id><f1>data21</f1><f2>data22</f2></row>
<row><id>3</id><f1>data31</f1><f2>data32</f2></row>
</table>

Вы можете использовать опции /xmlRoot и /xmlRow, чтобы изменить имена корневого узла и узла строки.

Например:

gsqlcmd convert test.csv test.xml /xmlroot=data /xmlrow=element

<?xml version="1.0" encoding="UTF-8"?>
<data>
<element><id>1</id><f1>data11</f1><f2>data12</f2></element>
<element><id>2</id><f1>data21</f1><f2>data22</f2></element>
<element><id>3</id><f1>data31</f1><f2>data32</f2></element>
</data>

Вы можете использовать пустые значения с опциями и отключить шаблон по умолчанию с помощью опции /noTemplate.

Например:

gsqlcmd convert test.csv test.xml /xmlroot= /xmlrow= /notemplate

<id>1</id><f1>data11</f1><f2>data12</f2>
<id>2</id><f1>data21</f1><f2>data22</f2>
<id>3</id><f1>data31</f1><f2>data32</f2>

Кроме того, вы можете использовать опции /template и /placeholder для настройки шаблона и положения вывода.

Ниже приведен шаблон, используемый по умолчанию, с заполнителем {table}:

<?xml version="1.0" encoding="UTF-8"?>
{table}

Вы можете изменить кодировку вывода с помощью опции /outputCodepage.

Настройка вывода в JSON

gsqlcmd генерирует выходные данные JSON в виде массива.

К примеру, test.csv содержит следующие строки:

id;f1;f2
1;data11;data12
2;data21;data22
3;data31;data32

Базовая команда преобразует данные к следующему виду:

gsqlcmd convert test.csv test.json

[{"id":1,"f1":"data11","f2":"data12"}
,{"id":2,"f1":"data21","f2":"data22"}
,{"id":3,"f1":"data31","f2":"data32"}
]

Чтобы изменить выходной документ, создайте шаблон и используйте опции /template и /placeholder.

Например, создайте template.json:

{"result":{table},"error":null}

и используйте команду:

gsqlcmd convert test.csv test.json /template=template.json

Выходной файл будет иметь следующее содержимое:

{"result":[{"id":1,"f1":"data11","f2":"data12"}
,{"id":2,"f1":"data21","f2":"data22"}
,{"id":3,"f1":"data31","f2":"data32"}
],"error":null}