6

我有一个 MSSQL 数据库,其中包含 Unicode (utf8) 数据。我的工作站是 linux(目前是 Ubuntu),并且正在寻找一种与 mssql 数据库一起工作的工具,我发现了 SQSH。问题是 - 当我在 sqsh 控制台中选择数据时,我得到的是乱码而不是 unicode 字符。使用开关“-J utf8”或“-J utf-8”并没有改变任何东西。

问题是 - 如何设置 sqsh 来处理 utf-8 数据?

如果不可能,您是否知道任何可从 linux 使用的替代工具来处理填充了 utf-8 数据的 mssql 数据库。我需要执行各种 T-SQL,运行预先准备好的 SQL 脚本文件,然后输出结果以供以后处理。也可以使用良好的 GUI(开源),不仅限于 shell 客户端。

4

4 回答 4

0

你在使用 freetds 和 sqsh 吗?如果是,请编辑您的 freetds.conf 以设置字符集。

http://www.freetds.org/userguide/localization.htm

于 2011-09-27T02:14:47.517 回答
0

我有同样的问题,它似乎与字符编码无关,但问题是脚本中有控制字符,不可打印的字符。

我从 sql 脚本中删除了它们,一切正常。

于 2019-02-23T14:08:28.390 回答
0

使用Azure Data Studio避免数据故障排除问题。它是 Linux 的一个很好的 SSMS 替代品。

于 2019-02-12T04:26:20.280 回答
0

如果您需要命令行工具,我建议使用来自 mssql-tools 的官方sqlcmd 。它适用于所有主要的 Linux 发行版,包括 Ubuntu。

使用 sqlcmd 连接


另一个 shell 工具是mssql-cli

特征

Mssql-cli 是一个新的交互式命令行工具,它在终端环境中提供了对 sqlcmd 的以下主要增强功能:

  • T-SQL 智能感知
  • 语法高亮
  • 查询结果的漂亮格式,包括垂直格式
  • 多行编辑模式
  • 配置文件支持
于 2019-02-17T18:14:03.543 回答