如何在免费版的MySQL中存储Unicode?如何在MySQL中存储unicode?
在SQL Server中似乎没有nvarchar
类型。 MySQL不支持Unicode吗?我尝试使用text
,但这也不起作用。
如何在免费版的MySQL中存储Unicode?如何在MySQL中存储unicode?
在SQL Server中似乎没有nvarchar
类型。 MySQL不支持Unicode吗?我尝试使用text
,但这也不起作用。
你需要选择一个utf8_*
字符为您的表中设置。文本和备注字段将自动存储在UTF-8中。对于UTF-16载体中的MySQL 6.
您是否尝试过在连接后设置名称?尝试存储unicode字符的结果是什么?连接到mysql服务器并输入:
SET NAMES UTF8;
这应该对utf8打开“支持”。然后尝试存储utf数据。
http://www.oreillynet.com/onlamp/blog/2006/01/turning_mysql_data_in_latin1_t.html - 我认为这可以帮助你
来的字符集为给定的字符串列(CHAR
,VARCHAR
或*TEXT
)是由它的character set and/or collation确定。这是一个相当激烈的话题,所以最好阅读我链接的文档。例如:
CREATE TABLE t1
(
col1 CHAR(10) CHARACTER SET utf8 COLLATE utf8_unicode_ci
)
将创建一个表t1
与col1
存储其以UTF-8编码的内容。
很好的解释和例子。谢谢。@ Stefan Gehrig – 2017-05-17 13:17:34
我遵循自己的编码风格,所以请在我的领导下考虑这一点。
首先我创建了MySql数据库。
创建数据库,在MySQL命令提示后,得到命令:
SET NAMES = UTF8;
表和列存储Unicode是与核对属性作为UTF8-utf_general_ci进行设置。要选择每个存储unicode的列,并将排序规则属性设置为utf8-utf_general_ci。
现在在C#中。
我的连接字符串设置像往常一样,但是添加这样一个属性:
constring = @"SERVER=localhost;" + @"PORT=3306;" + @"DATABASE=gayakidb;" + @"UID=root;" + @"PASSWORD=mysql;" + @"charset=utf8;";
接下来,在你的系统OS的“显示语言设置”安装Unicode字体。或者,您可以将字体文件(真实类型文件)复制并粘贴到操作系统的字体文件夹中。
然后我设置属性页中的文本框对象或任何其他工具对象的字体属性。
更重要的是,如果您需要使用键盘输入unicode字体,则需要安装用于键盘布局的unicode语言。这可以使用操作系统的区域语言设置选项来完成。
完成。通过这些设置,我编写了用于保存数据的模块,并在运行ocde时成功完成了这项工作。
使用此查询
alter table `DBNAME`.`TblName` Engine=InnoDB checksum=1 comment='' delay_key_write=1 row_format=dynamic charset=utf8 collate=utf8_unicode_ci
“使用此查询”没有解释是一个不好的答案。 – Emiswelt 2017-12-26 23:04:10
更新:UTF-16的表情符号(utf8mb4)支持自5.5版本介绍:http://dev.mysql.com/doc/refman/5.5/en/charset- unicode.html – Raptor 2014-12-29 04:24:48
值得注意的是,根据您从数据库中检索数据的方式,也可能需要明确让连接使用UTF-8。 – hugovdberg 2018-01-06 12:14:16