MySQLでキャラクタセットをutf8に指定する方法

MySQLでキャラクタセットの設定には、サーバ単位、データベース単位、テーブル単位、カラム単位とある。これのいずれかで「DEFAULT CHARACTER SET」を「utf8」に設定する。

  • サーバ単位

サーバの起動時にオプションで指定。

 $ mysqld --default-character-set=utf8
  • データベース単位
CREATE DATABASE db_name DEFAULT CHARACTER SET utf8;

ALTER DATABASE db_name  DEFAULT CHARACTER SET utf8;
  • テーブル単位
CREATE TABLE table_name (
 id int not null auto_increment primary key,
 col1 varchar(255)
) DEFAULT CHARACTER SET utf8;

ALTER TABLE table_name DEFAULT_CHARACTERSET utf8;
  • カラム単位
CREATE TABLE table_name (
 id int not null auto_increment primary key,
 col1 varchar(255) CHARACTER SET utf8
);