首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >mysql中的斯堪的纳维亚文字显示不正确

mysql中的斯堪的纳维亚文字显示不正确
EN

Stack Overflow用户
提问于 2013-04-22 00:06:44
回答 1查看 72关注 0票数 0

在我的数据库中插入一个表时,我遇到了一个问题。运行的服务器是Ubuntu:

分销商ID: Ubuntu描述: Ubuntu 12.04.2 LTS版本: 12.04代号: precise

我用下面的方法创建了一个只有一个表的数据库:

数据库创建mysql>create数据库test1234字符集latin1;

表创建字符集testtbl (test varchar(22) mysql>create latin1);

将mysql>insert插入到testtbl (测试)值(‘asdsdaóø’)中;

选择器: mysql> select * from testtbl;

+

测试

+

||

asdsda

?元

?元

asdads asdads

+

集合中的5行(0.00秒)

MySQLV14.14Distrib5.5.29,用于debian-linux-gnu (x86_64),使用readline 6.2

连接id: 427

当前数据库: test1234

当前用户: root@localhost

SSL:未使用

当前寻呼机: stdout

使用outfile:'‘

使用分隔符:;

服务端版本: 5.5.29-0ubuntu0.12.04.2-log (Ubuntu)

协议版本: 10

连接:通过UNIX套接字的Localhost

服务器字符集: latin1

Db字符集: latin1

客户端字符集: latin1

Conn.字符集: latin1

UNIX套接字: /var/run/mysqld/mysqld.sock

正常运行时间: 12天19小时9分35秒

我也尝试过utf8,但结果是一样的。

来自/var/log/mysql/mysql.log

130421 18:03:06 427查询insert insert into testtbl (test) value ('asdads') 130421 18:03:08 427查询select * from testtbl

我几乎搜索了整个互联网,但没有找到任何解决方案。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-22 00:19:19

SQL您可能有一个运行UTF-8的浏览器/客户端,而DB数据是拉丁文的-1。

在处理字符编码时,必须确保从数据源到屏幕的所有步骤都使用相同的编码。这包括:

对发送到从数据库读取的文件/脚本的database

  • Encoding的database

  • Encoding的数据进行
  • 编码

如果终点是网页:

在HTTP headers

  • Encoding中设置的
  • 编码设置在元标记中设置
  • Web浏览器编码设置(应自动设置为匹配HTTP头/元标记)

一个不错的建议是,如果您不是真的需要使用latin1,那么应该始终使用UTF-8。UTF-8越来越成为世界各地的标准,大多数应用程序都将其用作标准。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16133199

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档