SQL NVARCHAR(MAX) 返回 ASCII 和奇怪的字符而不是文本

SQL NVARCHAR(MAX) returning ASCII and Weird Characters instead of Text

我有一个 SQL Table 并且我正在尝试 return 作为字符串的值。 这些值应该是城市名称,例如悉尼、墨尔本、马夸里港等。

但是当我 运行 一个 select 时,我要么得到黑色结果,要么如第一张图片中所详述的那样出现一些奇怪的倒置 L 字符。该列是 NVARCHAR(MAX)

SELECT ctGlobalName FROM Crm.Cities

然后我尝试使用 MSSQL 的编辑前 200 行功能,我可以看到城市的名称,还有所有这些奇怪的 ascii 字符。

现在我没有创建数据库,我只是 运行查询它。我读过的一些东西表明这是排序规则的问题。但是 table 是 SQL_Latin1_General_CP1_CI_AS 匹配服务器排序规则。

我确定一定有一些东西可以添加到我的 select 查询中,以 return 作为普通字符串的值。我可以对我的 select 查询做些什么来 return 没有奇怪字符的预期格式吗?

NVARCHAR 数据类型可以存储 Unicode 字符,用于 ASCII 字符集不支持的语言,即非英语(或相关)语言,如中文或印度尼西亚语。如果您的 SQL 服务器或 Windows 没有安装该语言,那么您可能会看到奇怪的数据表示形式。

另一方面,也可能是更新此 table 的应用程序刚刚在该列中存储了错误数据。

无论哪种方式,您都可能需要进行一些字符串操作以删除不需要的字符。