sql >> データベース >  >> RDS >> Mysql

MySQLで文字セットをlatin1からUTF8に変更する方法

    デフォルトでは、MySQLデータベースにはlatin1文字セットと照合があります。ただし、MySQLデータベースにUTF8文字を格納する必要がある場合があります。文字セットをlatin1からUTF8に変更する方法は次のとおりです。


    MySQLデータベースをlatin1からUTF8に変換する方法

    MySQLデータベースの文字セットをlatin1からUTFに変更する手順は次のとおりです。


    1。現在の文字セットを決定する

    MySQLコマンドラインツールにログインします。パスワードプロンプトが表示されます。パスワードを入力してMySQLデータベースにログインします。

    $ sudo mysql -uroot -p

    次のコマンドを実行して、データベースの現在の文字セットを判別します。以下のdatabase_nameをデータベース名に置き換えてください

    mysql> SELECT default_character_set_name 
           FROM information_schema.SCHEMATA S 
           WHERE schema_name = "database_name";
    +----------------------------+
    | default_character_set_name |
    +----------------------------+
    | latin1                     |
    +----------------------------+

    特定のデータベーステーブルの文字セットを決定する場合は、次のコマンドを実行します。 database_nameとtable_nameをそれぞれデータベース名とテーブル名に置き換えます。

    mysql> 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 = "database_name" 
           AND T.table_name = "table_name";

    ボーナスリード:MySQLで最大接続数を増やす方法

    2。文字セットをlatin1からUTF8に変更します

    次のコマンドを実行して、MySQLデータベースの文字セットをlatin1からUTF8に変更します。 database_nameをデータベース名に置き換えます

    MySQLの場合>5.5

    mysql> ALTER DATABASE database_name CHARACTER 
           SET utf8mb4 COLLATE utf8mb4_unicode_ci;

    MySQLの場合<=5.5

    mysql> ALTER DATABASE database_name CHARACTER 
           SET utf8 COLLATE utf8_unicode_ci;

    ボーナスリード:MySQLでパーティションをランク付けする方法

    同様に、MySQLテーブルの文字セットをlatin1からUTF8に変更するコマンドは次のとおりです。 table_nameをデータベーステーブル名に置き換えます。

    MySQLの場合>5.5

    mysql> ALTER TABLE table_name CONVERT TO CHARACTER 
           SET utf8mb4 COLLATE utf8mb4_unicode_ci;

    MySQLの場合<=5.5

    mysql> ALTER TABLE table_name CONVERT TO CHARACTER 
           SET utf8 COLLATE utf8_unicode_ci;

    上記のチュートリアルが、データベースの文字セットをutf8mb4(UTF-8)に変更するのに役立つことを願っています。


    1. SQLスクリプトを検証するためのコード

    2. MySQLer向けのPostgreSQLトレーニング

    3. MySQL –データベースに存在する場合にテーブルを削除する方法は?

    4. 条件付き注文