如何将查询输出从Linux计算机上的mssql-cli发送到该计算机上CSV格式的文本文件?

时间:2019-01-24 21:08:43

标签: sql-server

如何将Linux计算机上在mssql-cli(Microsoft SQL命令行界面应用程序)中执行的数据库查询的输出发送到该计算机上的CSV格式的文本文件?该查询是到另一台服务器上的数据库。我已经能够连接到该服务器并将较小的查询结果集返回到我的屏幕。我想找回更大的CSV格式文件的查询结果集,这些结果集保存在我安装了mssql-cli的同一台Linux机器上。

2 个答案:

答案 0 :(得分:1)

Microsoft的mssql-cli没有任何此类选择。

mssql-cli --help输出:

Usage: main.py [OPTIONS]
Options:
    -S, --server TEXT       SQL Server instance name or address.
    -U, --username TEXT     Username to connect to the database.
    -W, --password          Force password prompt.
    -E, --integrated        Use integrated authentication on windows.
    -v, --version           Version of mssql-cli.
    -d, --database TEXT     database name to connect to.
    --mssqlclirc TEXT       Location of mssqlclirc config file.
    --row-limit INTEGER     Set threshold for row limit prompt. Use 0 to disable
                            prompt.
    --less-chatty           Skip intro on startup and goodbye on exit.
    --auto-vertical-output  Automatically switch to vertical output mode if the
                            result is wider than the terminal width.
    --help                  Show this message and exit.

还有一个不相关的项目,名为mssqlcli,确实有该选项。

~ [ mssqlcli --help Usage: mssqlcli [OPTIONS] COMMAND [ARGS]...

Options:
  --version  Show the version and exit.
  -c, --config-file PATH   Override default config file location
                           (default: ~/.config/pymssql.yml).
  -o, --output [json|csv|pretty]
  --help  Show this message and exit.

Commands:
  query           Run a query against an MS-SQL Database.
  template_query

~ [ mssqlcli query --help
Usage: mssqlcli query [OPTIONS] QUERY

Options:
  --help                   Show this message and exit.

~ [ mssqlcli template_query --help
Usage: mssqlcli template_query [OPTIONS] QUERY

Options:
  -v, --variable TEXT   Variable for substitution in template. ex:"-v
                        first_name:russell" to replace {{ first_name }}
  --help                Show this message and exit.

如您所见,使用该工具,您可以执行类似mssqlcli -o csv query 'SELECT * FROM whatever' > big_query.csv的操作。但是,这不是您询问的工具:Microsoft的mssql-cli

WebCPU

Microsoft's mssql-cli documentation

答案 1 :(得分:1)

mssql-cli 使用配置文件来控制输出格式(以及许多其他内容)。

要获得 csv 输出,只需在 ~/.config/mssqlcli/config 创建一个包含以下内容的文件:

table_format = tsv 

识别的其他选项记录在此处的主要 github 项目中的使用指南中:mssql-cli config options