【问题标题】:How to set character set as "UTF-8" in select statement in Sql server [duplicate]如何在Sql server的select语句中将字符集设置为“UTF-8”[重复]
【发布时间】:2017-11-17 11:47:49
【问题描述】:

我的工作有点麻烦。我正在研究 sql server 数据库,我只能从视图中获取数据。

现在,该数据库包含一些其他语言的信息,例如乌克兰语。因此,当我使用选择查询获取数据并在浏览器上打印时,它会显示问号 (??) 而不是实际数据。

我的查询如下:
从view1中选择*;

输出如下所示:

请看问号。

以前我使用 sqlsrv_connect() 函数连接 sql server 数据库,这个函数允许您为工作设置字符集 (UTF-8)。但是客户端服务器在 linux 上,我必须使用 mssql_connect() 并且这个函数没有任何设置字符集的选项。

当我将字符集设置为“UTF-8”时,选择查询显示的是实际数据。但是,我会在 mssql_connect() 函数的情况下这样做。

是否有任何排序规则集来处理这种情况?或在执行 select 语句之前更改字符集的任何其他方式。

请在这个问题上帮助我。我真的很沮丧。提前致谢

【问题讨论】:

  • 您确定数据以 Unicode 格式正确保存到某个 Unicode 数据列中吗?我怀疑数据实际上是由于保存而损坏的,所以实现它总是会返回损坏的字符串。

标签: php sql-server utf-8


【解决方案1】:

尝试将您的数据库和表 collat​​ion 设置为 utf8_general_ci。 我使用了它,它在我的表格中显示了几乎所有不同类型的语言。但这取决于utf8支持多少字母和符号。

【讨论】:

  • 我无法更改数据库以及表排序规则。我只允许从视图中获取数据。
  • 如果您无法更改数据库,那么您将无法显示数据,因为由于数据库整理本身,数据已经在数据库中编码。但无论如何,你可以等待另一个答案。有人可能在这方面工作过 =)
猜你喜欢
  • 2014-03-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-08-21
  • 1970-01-01
  • 1970-01-01
  • 2014-06-13
  • 1970-01-01
相关资源
最近更新 更多