【问题标题】:UTF-8 Character Encoding in SQLSQL 中的 UTF-8 字符编码
【发布时间】:2011-08-06 13:38:26
【问题描述】:

我正在一个充满特殊字符(如 é 和 ä)的 Access DB 上尝试 Bullzip's Access to mySQL app。该应用程序允许您指定 UTF-8 编码,但在生成的 SQL 文件中我得到“Vieux Carré”而不是“Vieux Carré”。

我尝试在UltraEdit 中打开 SQL 文件并进行 UTF-8 转换,但它无法解决此问题,因为我猜它正在转换“é”并且从未看到“é”?

什么是 Good™ 解决方案?

【问题讨论】:

    标签: ms-access utf-8 special-characters


    【解决方案1】:

    问题在于 UTF-8 到 Unicode 的转换进入或退出 Access。 Access 与 SQL Server 一样,只能以 ASCII 格式或 Unicode (UTF-16)(关闭 Unicode 压缩)本机存储数据。为了确保正确存储给定值,您需要在存储时将其转换为 Unicode,并在检索时将其转换回 UTF-8。您或许可以将StrConv 函数用于此目的。

    【讨论】:

    • 谢谢!我不知道这个限制。这很有启发性!
    • @jerrygarciuh 如果您使用ADODB.Command 并将值作为adVarWChar 传递,ADO 应该为您处理转换为 unicode,而不必手动转换。
    【解决方案2】:

    我现在对 Bullzip 转换器也有同样的问题,所以它仍然可以帮助某人。

    如果我将电脑语言设置为英语,它不会正确显示特殊字符。我必须将它切换回捷克语(特殊字符的语言),它现在可以工作并且 SQL 看起来正确。

    【讨论】:

      猜你喜欢
      • 2014-09-07
      • 2014-06-09
      • 2017-07-27
      • 2011-06-17
      • 2018-07-02
      • 2017-04-27
      • 2013-06-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多