0

在我的数据库中插入表时出现问题。运行的服务器是 Ubuntu:

发行商 ID:Ubuntu 描述:Ubuntu 12.04.2 LTS 版本:12.04 代号:精确

我通过以下方式创建了一个包含一个表的数据库:

创建数据库 mysql>create database test1234 CHARACTER SET latin1;

建表 mysql>create table testtbl (test varchar(22) CHARACTER SET latin1);

将 mysql>insert 插入 testtbl(测试)值('asdsdaæø');

选择器:mysql> select * from testtbl;

+--------------+
| 测试 |
+--------------+
| |
| 阿斯达|
|

4

1 回答 1

0

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

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

  • 发送到数据库的数据的编码
  • 数据库的编码
  • 从数据库读取的文件/脚本的编码

如果终点是网页:

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

一个好的提示是始终使用 UTF-8,如果您真的不需要使用 latin1。UTF-8 越来越成为无处不在的标准,大多数应用程序都将其用作标准。

于 2013-04-21T16:19:19.333 回答