微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

我如何使用非英语(孟加拉)语言输入数据到此数据库表中?

如何使用非英语(孟加拉)语言将数据输入此数据库表?

enter image description here


解决方法:

正如@Tim指出的那样,您需要将表/数据库/列的排序规则更改为UTF-8.首先检查数据库/表/列的排序规则.

检查分类

如何检查数据库的排序规则:

SELECT
    default_character_set_name
FROM
    information_schema.SCHEMATA
WHERE
    schema_name = "YOUR_DATABASE_NAME";

如何检查表的排序规则:

SELECT
    CCSA.character_set_name
FROM
    information_schema.`TABLES` T,
    information_schema.`COLLATION_CHaraCTER_SET_APPLICABILITY` CCSA
WHERE
    CCSA.collation_name = T.table_collation
AND T.table_schema = "YOUR_DATABASE_NAME"
AND T.table_name = "YOUR_TABLE_NAME";

如何检查列的排序规则:

SELECT
    character_set_name
FROM
    information_schema.`COLUMNS`
WHERE
    table_schema = "YOUR_DATABASE_NAME"
AND table_name = "YOUR_TABLE_NAME"
AND column_name = "YOUR_COLUMN_NAME";

更改收藏:

如何更改数据库排序规则:

ALTER DATABASE YOUR_DATABASE_NAME CHaraCTER SET utf8 COLLATE utf8_unicode_ci;

如何更改表排序规则:

ALTER TABLE YOUR_TABLE_NAME CONVERT TO CHaraCTER SET utf8 COLLATE utf8_unicode_ci;

如何更改列排序规则:

ALTER TABLE YOUR_TABLE_NAME MODIFY YOUR_COLUMN_NAME VARCHAR(255) CHaraCTER SET utf8 COLLATE utf8_unicode_ci;

例:

DROP TABLE IF EXISTS `sample_table`;
CREATE TABLE `sample_table` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) DEFAULT NULL,
  `language` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

INSERT INTO sample_table(name,language) VALUES('Ed Sheeran','English');
INSERT INTO sample_table(name,language) VALUES('আয়েশা খাতুন সুজানা','আমার সোনার বাংলা');

看,表定义中使用的CHARSET是utf8.因此,您可以在表中存储Unicode字符.

检查数据是否正确插入.

SELECT * FROM sample_table;

结果:

| id |               name |         language |
|----|--------------------|------------------|
|  1 |         Ed Sheeran |          English |
|  2 |    আয়েশা খাতুন সুজানা |  আমার সোনার বাংলা |

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐