How to create a MySQL database and support Chinese characters

How to create a MySQL database and support Chinese characters

Let's first look at the MySQL official documentation: 5.7

CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name
 [create_option] ...

create_option: [DEFAULT] {
 CHARACTER SET [=] charset_name
 | COLLATE [=] collation_name
}

By looking at the variables of the MySQL server, we know that the character set enabled by default when MySQL creates a database is latinl :

insert image description here

Now we need to specify the character set utf8 that supports Chinese for the created database db2. The following is a line of content!

CREATE DATABASE db2 IF NOT EXISTS db2 
DEFAULT CHARACTER SET utf8 
COLLATE utf_general_ci;

Above we have completed the creation of a database that supports inserting Chinese data. Now let's think about a question. The only character set that supports Chinese is utf8. What else are there? What is the difference between them?
Let's first take a look at the character sets and character rules supported by MySQL 5.7.x:

mysql> SELECT version();
+-----------+
| version() |
+-----------+
| 5.7.32 |
+-----------+
1 row in set (0.00 sec)

mysql> SHOW CHARACTER SET;
+----------+---------------------------------+---------------------+--------+
| Charset | Description | Default collation | Maxlen |
+----------+---------------------------------+---------------------+--------+
| big5 | Big5 Traditional Chinese | big5_chinese_ci | 2 |
| dec8 | DEC West European | dec8_swedish_ci | 1 |
| cp850 | DOS West European | cp850_general_ci | 1 |
| hp8 | HP West European | hp8_english_ci | 1 |
| koi8r | KOI8-R Relcom Russian | koi8r_general_ci | 1 |
| latin1 | cp1252 West European | latin1_swedish_ci | 1 |
| latin2 | ISO 8859-2 Central European | latin2_general_ci | 1 |
| swe7 | 7bit Swedish | swe7_swedish_ci | 1 |
| ascii | US ASCII | ascii_general_ci | 1 |
| ujis | EUC-JP Japanese | ujis_japanese_ci | 3 |
| sjis | Shift-JIS Japanese | sjis_japanese_ci | 2 |
| hebrew | ISO 8859-8 Hebrew | hebrew_general_ci | 1 |
| tis620 | TIS620 Thai | tis620_thai_ci | 1 |
| euckr | EUC-KR Korean | euckr_korean_ci | 2 |
| koi8u | KOI8-U Ukrainian | koi8u_general_ci | 1 |
| gb2312 | GB2312 Simplified Chinese | gb2312_chinese_ci | 2 |
| greek | ISO 8859-7 Greek | greek_general_ci | 1 |
| cp1250 | Windows Central European | cp1250_general_ci | 1 |
| gbk | GBK Simplified Chinese | gbk_chinese_ci | 2 |
| latin5 | ISO 8859-9 Turkish | latin5_turkish_ci | 1 |
| armscii8 | ARMSCII-8 Armenian | armscii8_general_ci | 1 |
| utf8 | UTF-8 Unicode | utf8_general_ci | 3 |
| ucs2 | UCS-2 Unicode | ucs2_general_ci | 2 |
| cp866 | DOS Russian | cp866_general_ci | 1 |
| keybcs2 | DOS Kamenicky Czech-Slovak | keybcs2_general_ci | 1 |
| macce | Mac Central European | macce_general_ci | 1 |
| macroman | Mac West European | macroman_general_ci | 1 |
| cp852 | DOS Central European | cp852_general_ci | 1 |
| latin7 | ISO 8859-13 Baltic | latin7_general_ci | 1 |
| utf8mb4 | UTF-8 Unicode | utf8mb4_general_ci | 4 |
| cp1251 | Windows Cyrillic | cp1251_general_ci | 1 |
| utf16 | UTF-16 Unicode | utf16_general_ci | 4 |
| utf16le | UTF-16LE Unicode | utf16le_general_ci | 4 |
| cp1256 | Windows Arabic | cp1256_general_ci | 1 |
| cp1257 | Windows Baltic | cp1257_general_ci | 1 |
| utf32 | UTF-32 Unicode | utf32_general_ci | 4 |
| binary | Binary pseudo charset | binary | 1 |
| geostd8 | GEOSTD8 Georgian | geostd8_general_ci | 1 |
| cp932 | SJIS for Windows Japanese | cp932_japanese_ci | 2 |
| eucjpms | UJIS for Windows Japanese | eucjpms_japanese_ci | 3 |
| gb18030 | China National Standard GB18030 | gb18030_chinese_ci | 4 |
+----------+---------------------------------+---------------------+--------+
41 rows in set (0.00 sec)

The four character sets gb2312, gbk, gb18030, utf8, and utf8mb4 all support Chinese.
For an introduction to gb2312, gbk, and gb18030, refer to this Zhihu article: Three Introductions For an introduction to utf8 and utf8mb4, refer to this article: The Difference Between utf8 and utf8mb4

This is the end of this article about how to create a database in MySQL and support Chinese characters. For more information about MySQL supporting Chinese characters, please search for previous articles on 123WORDPRESS.COM or continue to browse the related articles below. I hope everyone will support 123WORDPRESS.COM in the future!

You may also be interested in:
  • Mysql anonymous login cannot create a database problem solution
  • Introduction to adding new users to MySql, creating databases for users, and assigning permissions to users
  • mysql create database, add users, user authorization practical method
  • Two ways to create a MySQL database
  • Create database and database table code with MySQL
  • Example of creating a database using PHP
  • Create database php code and write your own BLOG system with PHP
  • PHP Desktop Center (I) Creating a database
  • MySQL and PHP basics and application topics: creating database tables

<<:  Bundling non-JavaScript static resources details

>>:  Solution to the problem that the image name is none after Docker load

Recommend

VUE Getting Started Learning Event Handling

Table of contents 1. Function Binding 2. With par...

Realize breadcrumb function based on vue-router's matched

This article mainly introduces the breadcrumb fun...

How to reset Zabbix password (one-step)

Problem Description Since we don't log in to ...

JavaScript canvas implements moving the ball following the mouse

This article example shares the specific code of ...

Flex layout allows subitems to maintain their own height

When using Flex layout, you will find that when a...

A simple way to build a Docker environment

First, let’s understand what Docker is? Docker is...

Unicode signature BOM (Byte Order Mark) issue for UTF-8 files

I recently encountered a strange thing when debug...

A brief discussion on the problem of Docker run container being in created state

In a recent problem, there is such a phenomenon: ...

How to upload projects to Code Cloud in Linux system

Create a new project test1 on Code Cloud Enter th...

The DOCTYPE mode selection mechanism of well-known browsers

Document Scope This article covers mode switching...

Summary of MySQL slow log practice

Slow log query function The main function of slow...

Complete example of vue polling request solution

Understanding of polling In fact, the focus of po...

Explanation of building graph database neo4j in Linux environment

Neo4j (one of the Nosql) is a high-performance gr...