「MySQL - テーブル」の版間の差分

ナビゲーションに移動 検索に移動
185行目: 185行目:
既存のテーブルやカラムの照合順序を変更することも可能である。<br>
既存のテーブルやカラムの照合順序を変更することも可能である。<br>
<br>
<br>
===== 全てのカラムの照合順序の変換 =====
===== テーブルの照合順序の変更 =====
全てのカラムの文字コードおよび照合順序を変換する。<br>
テーブルの照合順序を変更する。<br>
これは、テーブルの文字コードと各カラムの文字コードを揃える時に使用する。<br>
<u>ただし、各カラムの照合順序は変更されないことに注意する。</u><br>
<syntaxhighlight lang="mysql">
ALTER TABLE tbl_name
    CHARACTER SET <文字コード>
    COLLATE <照合順序>
-- 例: sample_tableテーブルの照合順序をutf8mb4_general_ciに変更する
ALTER TABLE sample_table
    CHARACTER SET utf8mb4
    COLLATE utf8mb4_general_ci
</syntaxhighlight>
<br>
===== 全ての文字カラムの照合順序の変更 =====
全ての文字カラムの文字コードおよび照合順序を変更する。<br>
これは、テーブルの文字コードと各カラムの文字コードを揃える時に使用すると便利である。<br>
  <syntaxhighlight lang="mysql">
  <syntaxhighlight lang="mysql">
  ALTER TABLE <テーブル名>
  ALTER TABLE <テーブル名>
     CONVERT TO CHARACTER SET <文字コード>
     CONVERT TO CHARACTER SET <文字コード>
     COLLATE <照合順序> -- オプション
     COLLATE <照合順序>
   
   
  -- 例: sample_tableテーブルの文字コードをutf8mb4、照合順序をutf8mb4_general_ciに変更する
  -- 例: sample_tableテーブルの文字コードをutf8mb4、照合順序をutf8mb4_general_ciに変更する
199行目: 213行目:
  </syntaxhighlight>
  </syntaxhighlight>
<br>
<br>
===== 任意のカラムの照合順序の変換 =====
===== 任意のカラムの照合順序の変更 =====
以下の例では、テーブルの任意のカラムの照合順序を<code>utf8mb4_unicode_ci</code>に変更している。<br>
以下の例では、テーブルの任意のカラムの照合順序を<code>utf8mb4_unicode_ci</code>に変更している。<br>
  <syntaxhighlight lang="mysql">
  <syntaxhighlight lang="mysql">
  ALTER TABLE <テーブル名> MODIFY <カラム名> <カラムの型名> COLLATE utf8mb4_unicode_ci;
  ALTER TABLE <テーブル名> MODIFY <カラム名> <カラムの型名: CHAR, VARCHAR, TEXT> COLLATE utf8mb4_unicode_ci;
   
   
  -- 例: sample_tableテーブルのsample_colカラムをutf8mb4_unicode_ciに変更する
  -- 例: sample_tableテーブルのsample_colカラムをutf8mb4_unicode_ciに変更する

案内メニュー