MySQLでデータベースを作成する方法を紹介します。
【CREATE DATABASE】データベースを作成する
1 |
CREATE DATABASE データベース名; |
MySQLでデータベースを作成するには、「CREATE」文を使います。このデータベースに対する「CREATE」権限がないと実行できません。
次からデータベース作成時のオプションなどについて説明していきます。
データベースが存在しなければ作成する:IF NOT EXISTS
1 |
CREATE DATABASE IF NOT EXISTS データベース名; |
データベースが存在しなければ作成します。これを指定せずに、存在するデータベースと同名のデータベースを作成しようとするとエラーとなります。
PHPなどのプログラムからデータベースを作成する場合は、これをつけておいた方が良いでしょう。
デフォルトの文字コードを指定する:CHARACTER SET
1 |
CREATE DATABASE データベース名 DEFAULT CHARACTER SET 文字コード; |
日本語などのマルチバイト文字をプログラムで扱う場合、文字コードの設定は特に重要です。そのため、データベースの作成時は、必ず「CHARACTER SET」句で文字コードを指定しましょう。
データベース照合順序を指定する:COLLATE
1 |
CREATE DATABASE データベース名 COLLATE 照合順序; |
データベース照合順序とは、名前の通り照合する順番を指します。簡単に言うと文字列の比較方法の指定です。
例えば、よく見かける「COLLATE utf8_general_ci」という場合。文字コードは「utf8」で、言語は多言語を示す「general」、文字列の比較方法は大文字と小文字が区別されない 「ci」であるということを意味します。
サンプル:WordPressのデータベースを作成する
例えば、WordPressのデータベースを作成する時に、文字コードがUTF8で照合順序は「utf8_general_ci」とする場合は以下のようになります。
1 |
CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; |
また、「mysqladmin」コマンドでデータベースを作成することもありますが、あまり一般的ではありません。