1. ホーム
  2. コース一覧
  3. データベース基礎コース
  4. ALTER DATABASE文でデータベースの設定を変更しよう

データベース基礎コース3/13

ALTER DATABASE文でデータベースの設定を変更しよう

こちらではMySQLを通じたデータベースの使い方について、作成したデータベースの仕様変更の方法および削除の方法について学習します。

こちらでの学習を通じて、データベースの使い方について理解を深めて行きましょう。

データベースの変更

ALTER DATABASEを使用すると、データベースの全体的な仕様を変更する事ができます。ここで変更できる仕様とは、文字コードと照合順序の二つです。

文字コードとは、コンピュータで取り扱う「文字(CHARACTER)を要素とする集合」のことを言います。文字セットと言われる場合もあります。

「文字を要素とする集合」とは、例えば全てのアルファベット(a,b,c,d...z,A,B,C.D...Z)や、全ての平仮名(あ,い,う,え....を,ん)を指します。この文字の集合をコンピュータがどのように電気信号で表現(Byte表現)するかを規定したものが文字コードです。主な文字コードには、下記のものがあります。

コード名概要
JISコードインターネットや電子メールで日本語を表記する際に最も標準的に使用されている文字コード
ASCIIコードラテンアルファベット/数字/記号/空白文字/制御文字などの128文字を表現する文字コード
Unicodeアルファベット/漢字/カナ/アラビア文字など世界中の文字を表現しようとする文字コード

照合順序とは、文字(値)を並び替える時のルールのことを言います。具体的には「大文字と小文字を区別するかどうか」「文字列をbyteデータに置き換えた値(バイナリデータ)で比較するかどうか」といったルールのことを指します。細かい説明はここでは差し控えますが、照合順序名の末尾(接尾辞/サフィックス)で照合ルールについての特性が示されています。

各文字コードには複数の照合順序が用意されており、文字コードの指定に併せて照合順序を指定する事ができます。

サフィックス特性
_ci大文字と小文字を区別しません。
_cs大文字と小文字を区別します。
_binバイナリ比較を行います。
_aiアクセントを区別しません。
_asアクセントを区別します。
_ksカナを区別します。

実際にデータベースの仕様を変更する際は、ALTER DATABASEを記述した後に変更したいデータベース名を指定し、続いてCHARACTER SETを記述して使用したい文字コードを指定します。

ALTER DATABASE [データベース名] CHARACTER SET [使用したい文字コード];

照合順序を併せて指定したい場合には、使用したい文字コードの後ろにCOLLATEを記述し、続けて照合順序を指定します。

ALTER DATABASE [データベース名] CHARACTER SET [使用したい文字コード] COLLATE [照合順序];

データベースの削除方法

既存のデータベースを削除する場合には、DROP DATABASEを記述した後に削除したいデータベース名を指定します。DROP DATABASEを使用すると、指定されたデータベース内の全てのテーブルを削除した後に、そのデータベースを削除します。

DROP DATABASE [削除したいデータベース名];

まとめ

今回はデータベースの仕様変更と削除について学びました。

ここで取り上げた内容の他にも、様々なオプションや定義・ルールが存在します。

興味を持たれた方は、ぜひ調べてみて下さい。実際に触れてみたい方は、環境を起動しましょう。

問題を解くためには、十分な画面サイズのPC環境をご利用下さい。