応急処置 MySQL サーバー・データベースの文字コードを無視して、テーブル・カラムの文字コードを utf8 に設定する

サーバー・データベースの文字コード如何に関わらず、
テーブル・カラムの文字コードを設定することで、
ウェブページをうまく表示させられそうなのでやってみます。

テーブルの文字コード確認は、
データベースを選んで、SQL画面で
show create table テーブル名;

既存のテーブルの文字コードの変更は、
alter table テーブル名 default character set utf8 COLLATE utf8_general_ci;
しかし、これだとテーブルの中のカラムの文字コードはそのままでした。

既存のテーブルとカラムの文字コードの変更は、
ALTER TABLE テーブル名 MODIFY カラム名 varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci;

既存のテーブルと複数のカラムの文字コードの変更は、
ALTER TABLE テーブル名 MODIFY カラム名 varchar(255) CHARACTER SET utf8, MODIFY カラム名 varchar(255) CHARACTER SET utf8;

カラム名の後ろは「型」です。
先にテーブルの文字コード確認 (show create table …) で出てきたものを
そのままコピペすれば良いでしょう。

「CHARACTER SET」の後ろに「NOT NULL」や「DEFAULT NULL」「COMMENT」などがある場合、
modify 時にそれも書いておかないと、設定が変わってしまいます。

私はとりあえず上手くいきました。
今後、webpage から database にうまく文字が送られるか、経過観察していきます。

完。

コメント

タイトルとURLをコピーしました