• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:MySQLでテーブルごとに内部文字コードを変更したい)

MySQLでテーブルごとに内部文字コードを変更したい

このQ&Aのポイント
  • MySQL3.23.55を使用している場合、テーブルごとに内部文字コードを変更する方法を知りたいです。
  • 現在の設定ではデフォルトの文字コードが使用されているため、sjisのデータベースを作成する方法についても知りたいです。
  • MySQLでも特定の文字コードを使用するためには、--with-extra-charsets=complexを指定する必要があります。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

最初にお断りしておきますが私は「識者」ではありませんので、そのおつもりで。 MySQLの現行バージョンは4.0.15aですが、複数のcharsetsを同時に使えるようになるのは4.1からのようです。下記URLにアナウンスがあります。 http://www.mysql.com/newsletter/2003-04/a0000000148.html --with-extra-charsetsの効果は、charset固定の単一言語のバイナリではなく、実行時にcharsetをいずれかひとつ選択することができるバイナリを作成するものだと私は解釈しています。(そのバイナリがあればリコンパイルせずに済む) ところでタイトルの「テーブルごと」ではなく本文の「データベース毎」でよいなら、複数サーバを立ち上げれば可能なんじゃないかと思うのですが、思うだけです(^^;。試したことはありません。下記URLを参照して下さい。 http://www.mysql.gr.jp/jpdoc/3.23.x/manual.ja_MySQL_Database_Administration.html#Multiple_servers (↑は長いので↓) http://web.kuicr.kyoto-u.ac.jp/manual/mysql/manual.ja_Multiple_servers.html#Multiple_servers

angband
質問者

お礼

create文でデータベースやテーブル毎にcharsetを選択 できるようになるのは4.1からなんですね。newsletterは まったくチェックしておりませんでしたのでこれからは チェックしたいと思います。 ご指摘の3.23のマニュアルの複数のMySQLを入れる方法だと データディレクトリにmy.cnfでcharsetを指定することで 複数言語は可能だと、僕も思います。 しかし1つのMySQLサーバで複数の言語サポートが configureで指定できるのに、実際には1つしか使えない、 切り替える場合は既存のDBにも影響があるのはなんか 納得できなかったもので・・ これからnewsletterを読み漁って答えを探してみたいと 思います。 本当にありがとうございました。勉強になりました。

関連するQ&A