MySQL如何输入中文数据库(mysql下输入中文)

MySQL是目前最流行的关系型数据库管理系统之一,在业界得到了广泛应用。如今,随着国内IT行业不断发展壮大,越来越多的公司和个人开始使用MySQL数据库。然而,对于很多初学者来说,如何在MySQL中输入中文则成为了一个困扰。

我们需要知道MySQL默认的字符集是Latin1,不支持中文字符。为了输入中文数据,需要将字符集更改为utf8或gbk。这里我们选择utf8作为例子。

打开MySQL命令行客户端。在输入密码之后,输入以下命令可以查看当前数据库的字符集:

show variables like '%char%'; 

执行完命令之后,我们会看到如下结果:

+--------------------------+----------------------------------------------------+
| Variable_name | Value |
+--------------------------+----------------------------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/local/mysql-5.7.19-macos10.12-x86_64/share/charsets/ |
+--------------------------+----------------------------------------------------+

我们可以发现,MySQL默认的数据库字符集是latin1。接下来,我们需要将字符集更改为utf8。输入以下命令:

set names utf8; 

执行完此命令之后,输入再次查看当前数据库字符集的命令,会发现此时数据库字符集已经改变为了utf8:

+--------------------------+----------------------------------------------------+
| Variable_name | Value |
+--------------------------+----------------------------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/local/mysql-5.7.19-macos10.12-x86_64/share/charsets/ |
+--------------------------+----------------------------------------------------+

现在,我们已经将字符集更改为utf8。接下来,我们可以输入中文字符了。当然,在输入中文字符之前,需要在创建表的时候将表的字符集也更改为utf8。

我们可以通过以下代码示例来创建一张表:

CREATE TABLE `employee` ( 
`id` INT NOT NULL AUTO_INCREMENT,
`name` VARCHAR(30) NOT NULL,
`sex` CHAR(1) NOT NULL,
`age` INT(11) NOT NULL,
`department` VARCHAR(30) NOT NULL,
PRIMARY KEY (`id`)
) CHARSET=utf8;

在创建表的时候,我们只需要在CHARSET后面加入utf8即可。接下来,我们就可以往employee表中输入中文数据了。

在MySQL命令行客户端中,输入以下语句即可添加中文数据到employee表:

INSERT INTO employee(name,sex,age,department) VALUES('张三','男',26,'技术部');

输入完毕之后,我们通过以下命令检查一下是否成功输入中文数据:

SELECT * FROM employee;

在命令行窗口中,我们可以看到刚才插入的中文数据已经成功显示,如下所示:

+----+--------+-----+-----+-------------+
| id | name | sex | age | department |
+----+--------+-----+-----+-------------+
| 1 | 张三 | 男 | 26 | 技术部 |
+----+--------+-----+-----+-------------+

我们还需要在网站的代码中设置数据库字符集为utf8,否则就算成功输入了中文数据,该中文数据在网站中也无法正常显示。以PHP为例,可以在连接MySQL时加入以下代码:

$conn = mysqli_connect($hostname,$username,$password,$database); 
mysqli_set_charset($conn,"utf8");

综上所述,要在MySQL中输入中文数据并展示出来,需要将数据库字符集更改为utf8,并在创建表的时候将表的字符集也更改为utf8。接下来,可以利用MySQL命令行客户端或网站的代码将中文数据输入到MySQL中。


数据运维技术 » MySQL如何输入中文数据库(mysql下输入中文)