mysql セットの文字セット

王林
リリース: 2023-05-08 09:36:06
オリジナル
3130 人が閲覧しました

MySQL は強力なオープンソース データベースとして、あらゆる分野のほとんどのアプリケーションで広く使用されています。 MySQL を使用する場合、文字セットの設定は非常に重要な問題です。この記事では、開発者が MySQL データベースを正しく使用できるように、MySQL 文字セットを設定する方法を紹介します。

1. 文字セットの概念

文字セットとは、コードと文字の対応関係に関する仕様であり、コンピュータ文字の符号化方式を規定します。文字セットはデータベース システムごとに異なる設定を持つ場合があり、文字セットが異なれば特性や利点も異なります。たとえば、漢字を処理する場合、GB2312/GBK/GB18030 は Latin1/Latin7 よりも優れています。

MySQL では、文字セットはデータベース、テーブル、および列内の文字データのエンコーディングを指します。平たく言えば、文字セットとは、文字と文字列を保存および処理するために使用される方法を指します。

MySQL でサポートされている文字セットには、主に ASCII、GBK、GB2312、UTF-8、UTF-16、ISO-8859 などが含まれます。その中で、UTF-8 が最もよく使用される文字セットです。 MySQL では、複数の言語をサポートし、柔軟なエンコード形式を備え、スペースを節約し、その他の利点があるためです。

2. MySQL 文字セットの設定方法

  1. MySQL でサポートされている文字セットをクエリする

MySQL データベースでは、文字をクエリできます。文字セットのコマンドを通じてデータベースでサポートされるセット。方法は次のとおりです:

SHOW CHARACTER SET;

このコマンドでは、MySQL で使用できるさまざまな文字セットをリストできます。例:

  1. データベースの文字セットを設定する

新しい MySQL データベースを作成するときに、データベースのデフォルトの文字セットを設定できるため、すべてのテーブルの文字セットがデータベースには文字セットが使用されます。

2.1 まず MySQL でサポートされている文字セットを確認します

mysql> SHOW CHARACTER SET;

2.2 新しいデータベースを作成するときに文字を追加します設定を設定します Define

CREATE DATABASE new_db CHARACTER SET utf8;

または

CREATE DATABASE new_db DEFAULT CHARACTER SET utf8;

ここで、utf8 は一般的な CHARACTER SET の 1 つです。使用される文字セット。

  1. MySQL テーブルの文字セットを設定する

テーブルのフィールドにデータを正しく保存および表示するには、テーブルの文字セットを設定する必要があります。テーブル。 MySQLではテーブル作成時にテーブルの文字セットを設定できます。テーブルが作成されている場合は、Alter コマンドを使用してテーブルを変更することもできます。

3.1 テーブル作成時の文字セットの設定

CREATE TABLE new_table (
id INT(11) NOT NULL AUTO_INCREMENT,
name VARCHAR(50) NOT NULL DEFAULT '' ,
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

このうち、ENGINE=InnoDBはテーブルのストレージエンジンの設定に使用され、CHARSET=utf8が使用されます。テーブルのデフォルトの文字セットを設定します。

3.2 テーブルの文字セットを変更します

ALTER TABLE old_table CONVERT TO CHARACTER SET utf8;

or

ALTER TABLE old_table MODIFY COLUMN name VARCHAR( 50) CHARACTER SET utf8;

このうち、CONVERT TO コマンドはテーブルのデフォルトの文字セットを変更するために使用され、MODIFY COLUMN コマンドはテーブル内の列の文字セットを変更するために使用されます。

  1. MySQL 接続の文字セットを設定する

MySQL サーバーに接続するときに、操作の文字セットを設定することもできます。この文字セット設定は「クライアント文字セット」と呼ばれることが多く、クライアントで送信されるデータの文字セットを指します。

4.1 現在の接続の文字セットを表示します

mysql> SELECT @@character_set_connection;

4.2 接続の文字セットを変更します

SETcharacter_set_connection = utf8;

or

mysql --default-character-set=utf8 -u root -p

このうち、SET コマンドは、デフォルトの文字セットを変更できます。接続、--default-character -set コマンドでは、クライアントの文字セットを指定できます。

  1. その他の文字セット設定

場合によっては、まれなデータ ストレージおよび変換シーンを処理するために、MySQL の他の文字セット設定を開く必要がある場合があります。この時点で、MySQL 構成ファイル (my.cnf ファイル) を変更する必要がある場合があります。このファイルを変更するには、管理者権限が必要な場合があります。変更方法は次のとおりです。

5.1 my.cnf ファイルを検索する

Linux では、my.cnf ファイルは通常、/etc/my.cnf または /etc/mysql に保存されます。 /my.cnf ディレクトリ。

Windows では、my.cnf ファイルは通常、MySQL データベースのインストール ディレクトリに保存されます。

5.2 my.cnf ファイルを変更します

my.cnf ファイルに次のステートメントを追加します:

[mysqld]
character_set_server=utf8
init_connect= 'SET NAMES utf8'

このうち、character_set_server コマンドは、リストされた文字セットを設定するために使用され、init_connect コマンドは、接続の作成時に文字セットを自動的に設定するために使用されます。

  1. 概要

MySQL は非常に人気のあるオープン ソース データベースであり、その文字セット設定は非常に重要な役割を果たします。 MySQL の文字セットを正しく設定すると、データの正常な読み取り、書き込み、保存が保証されます。この記事では、MySQL キャラクタ セットの基本概念、データベース、テーブル、接続の作成時にキャラクタ セットを設定する方法、およびより多くのキャラクタ セット設定を有効にするために my.cnf ファイルを変更する方法を紹介します。 MySQLを使用します。

##dec8 DEC 西ヨーロッパ dec8_swedish_ci 1 ##cp850 # #hp8 HP 西ヨーロッパ hp8_english_ci 1 koi8r KOI8-R Relcom ロシア語 koi8r_general_ci 1 latin1 iso-8859-1 西ヨーロッパ latin1_swedish_ci 1 iso-8859-2 中央ヨーロッパ #swe7 7bit スウェーデン語 swe7_swedish_ci 1 #ascii US ASCII ascii_general_ci 1 #ujis EUC-JP 日本語 ujis_japanese_ci 3 sjis シフトJIS日本語 sjis_japanese_ci 2 ヘブライ語 iso-8859-8 ヘブライ語 hebrew_general_ci 1 tis620 TIS620 タイ語 tis620_thai_ci 1 euckr_korean_ci koi8u_general_ci gb2312_chinese_ci ##ギリシャ語 iso-8859-7 ギリシャ語 greek_general_ci 1 cp1250 Windows Central European cp1250_general_ci 1 gbk GBK 簡体字中国語 gbk_chinese_ci 2 latin5 iso-8859-9 トルコ語 latin5_turkish_ci 1 armscii8 ARMSCII-8 アルメニア語 armcii8_general_ci 1 utf8 UTF-8 Unicode utf8_general_ci 3 ucs2 UCS-2 Unicode ucs2_general_ci 2 cp866 DOS ロシア語 cp866_general_ci 1 1 1 1 1 1 4 1 4 ##utf16le UTF-16LE Unicode utf16le_general_ci 4 cp1256 Windows アラビア語 cp1256_general_ci 1 cp1257 Windows バルト語 cp1257_general_ci 1 utf32 UTF-32 Unicode utf32_general_ci 4 binary バイナリ擬似文字セット binary 1 geostd8 ##cp932 SJIS for Windows 日本語 cp932_japanese_ci 2 ##eucjpms
Charset Description デフォルトの照合順序 Maxlen
big5 Big5 繁体字中国語 big5_chinese_ci 2
DOS 西ヨーロッパ cp850_general_ci 1
##latin2
latin2_general_ci 1
##euckr EUC-KR 韓国語
2 koi8u KOI8-U ウクライナ語
1 gb2312 GB2312 簡体字中国語
2
##keybcs2 DOS カメニッキー チェコ語-スロバキア語 keybcs2_general_ci
macce Mac 中央ヨーロッパ macce_general_ci
macroman Mac West European macroman_general_ci
cp852 DOS Central European cp852_general_ci
latin7 iso-8859-13 バルト海 latin7_general_ci
#utf8mb4 UTF-8 Unicode utf8mb4_general_ci
#cp1251 Windows キリル文字 cp1251_general_ci
utf16 UTF-16 Unicode utf16_general_ci
#GEOSTD8 ジョージア語 geostd8_general_ci 1
UJIS for Windows 日本語 eucjpms_japanese_ci 3

以上がmysql セットの文字セットの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!