17.キャラクターセット

1.文字セット
文字は、国別文字、句読点、グラフィック記号、数字など、さまざまな文字や記号の総称です。
文字セットは複数の文字の集まりです。文字セットには多くの種類があり、各文字セットには異なる数の文字が含まれています。一般的な文字セットには、ASCII、GB2312、GBK、GB18030、UniCodeなどがあります。さまざまな文字セットの文字を正確に処理するには、コンピューターがさまざまな文字を認識して保存できるように、文字エンコードが必要です。

キャラクターセット 説明
ASCII 主に現代の英語やその他の西ヨーロッパの言語を表示するために使用される、最も単純な西洋のコーディングスキーム。128文字を表すために1バイトを使用する
GB2312 ASCIIと互換性のある国家標準の簡略化された中国語の文字セット。2バイトを使用して、6763の中国語文字を含む7445の記号を表すことができ、ほとんどすべての高頻度の中国語の文字をカバーします。
GBK GB2312の拡張により、従来の文字のサポートが追加され、GB2312と互換性があります。21886文字を表すために2バイトを使用する
GB18030 GBKと互換性のある中国語、日本語、韓国語などのエンコードを解決しました。可変バイト表現を使用して、27484文字を表現できます
Unicode Unicodeは、世界の650言語のコーディングを統合し、ISO-8859-1と互換性のある国際標準のコーディングされた文字セットです。Unicode文字セットには、UTF-8、UTF-16、UTF-32などの複数のエンコード方法があります。

2.MySQLでサポートされている文字セット

show character set;

ここに写真の説明を挿入

3.データベースの文字セットを設定します

#创建数据库时指定字符集
create database databaseName character utf8 collate utf8_general_ci;

#查看数据库的字符集
show create database databaseName;

#修改数据库的字符集
alter database databaseName default character set utf8;

4.データテーブルの文字セットを設定します

#创建表时指定字符集
create table tableName
(
...
) default charset = utf8;

#查看数据库的字符集
show create table tableName;

#修改数据表的字符集
alter table tableName convert to character set utf8;

5.フィールド文字セットを設定します

#创建字段时指定字符集
create table tableName(
..., 
name varchar(50) not null charset utf8, 
...
);

#修改字段字符集
alter table tableName modify name char(10) character set utf8;

6.utf8mb4
MySQLは5.5.3の後にutf8mb4エンコーディングを追加しました。mb4はほとんどのバイト4の省略形であり、Emojiなどの4バイト文字との互換性のために特別に設計されています。MySQLのutf8はutf8mb3のエイリアスであり、utf8mb4はutf8と互換性があり、utf8よりも多くの文字を表すことができます。MySQL8.0は、デフォルトの文字セットとしてutf8mb4を使用します。

おすすめ

転載: blog.csdn.net/Jgx1214/article/details/107496229