将韩文字符存储在 MySQL 中

Store Korean characters in MySQL

我有一个表格,但每次我提交韩文字符时,它在我的 phpmyadmin 数据库中显示为问号或非常复杂。我希望能够使用拉丁字符和亚洲字符在我的 MySQL 数据库 table 中提交条目,我也在 E​​clipse 中使用 java。

我已经完成了以下操作:

以及下面的截图。非常感谢您的帮助。

我建议您排除数据库以外的所有因素,以确保问题确实出在数据库上。首先检查十六进制值:

SELECT HEX(column_name) FROM table_name

如果您在看到“?”的地方看到“3F”,则很可能是来自您的 Web 应用程序的数据有问题(更多帮助 here in section A.11.2 例如使用 SET NAMES 和更改 MySQL INI 文件)。您还应该尝试手动将十六进制插入数据库 table 并以正常方式和十六进制方式选择它以确保数据正确进出。

如果您仍然怀疑数据库有问题,请确保您的 table 正在正确编码字符集(即 DEFAULT CHARSET),例如(或 other examples):

SHOW CREATE TABLE table_name

尝试使用 utf8/utf8mb4 时,如果您看到 问号 (普通问号,不是黑色菱形),

  • 要存储的字节未编码为utf8。解决这个问题。
  • 数据库中的列是CHARACTER SET utf8(或utf8mb4)。解决这个问题。
  • 另外,检查读取时的连接是否为utf8

尝试使用 utf8/utf8mb4 时,如果您看到 Black Diamonds 带有问号, 存在以下情况之一:

案例 1(原始字节 不是 utf8):

  • 要存储的字节未编码为utf8。解决这个问题。
  • INSERT SELECT 的连接(或 SET NAMES)不是 utf8/utf8mb4。解决这个问题。
  • 此外,检查数据库中的列是否为 CHARACTER SET utf8(或 utf8mb4)。

情况 2(原始字节 utf8):

  • SELECT 的连接(或 SET NAMES)不是 utf8/utf8mb4。解决这个问题。
  • 此外,检查数据库中的列是否为 CHARACTER SET utf8(或 utf8mb4)。

仅当浏览器设置为 <meta charset=UTF-8>

时才会出现黑色菱形

注:euckr与utf8不一样。可以处理,但需要不同的步骤。