我是MySQL
的新手。
我有一个列在Unicode character
表中存储MySQL
。
我有一个代码可以从twitter,facebook
等获取帖子
将text/symbol
'按'插入表中。
CREATE TABLE `tbl_unicode` (
`_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,
`first_name` varchar(45) NOT NULL,
`uninoce_Column` varchar(200) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`_id`)
) ENGINE=InnoDB AUTO_INCREMENT=201 DEFAULT CHARSET=utf8;
/* This query WONT work due to SYMBOL: */
INSERT INTO `tbl_unicode`
(`_id`,
`first_name`,
`uninoce_Column`)
VALUES
(2,
'rakesh',
'最高の休日
#京都#宮津#天の橋立#');
/* This query WORKS FINE */
INSERT INTO `tbl_unicode`
(`_id`,
`first_name`,
`uninoce_Column`)
VALUES
(1,
'shekhar',
'最高の休日
#京都#宮津#天の橋立#');
enter code here
那么,我应该采用哪种数据类型或配置来使其工作。
有什么建议吗?
答案 0 :(得分:4)
CHARACTER SET utf8
MySQL的utf8
字符集不是UTF-8。那太简单了!相反,它是UTF-8的有限子集,其中只支持代码指向U + 00FFFF,可以存储在三个UTF-8字节中。是U + 01F48F,所以它不适合表格的字符集。
真正的 UTF-8字符集在MySQL(5.5及更高版本)中称为utf8mb4
。
答案 1 :(得分:-2)
使用nvarchar
作为表字段的数据类型。 varchar
仅存储8位字符,而nvarchar
也存储unicode字符。