• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:2008年12月現在の日本語対応のMySQLについて)

日本語対応のMySQLの使い方と解決方法

このQ&Aのポイント
  • SQLの初心者が日本語対応のMySQLを使用する方法についての質問です。WindowsXP Proffesionalを使用しており、最新のバージョンであるMySQL 5.1.30をダウンロードしていますが、テーブル名やカラム名、挿入データが日本語である場合に文字化けやエラーが発生してしまいます。
  • 日本語対応のMySQLを上手く使用するためのウェブページや解決方法についての情報を探している初心者ですが、なかなか見つからず困っています。
  • 教えてGooなどの検索エンジンを使用しても解決策が見つからず、質問を投稿して助けを求めています。日本語対応のMySQLを使う方法やエラーの対処方法について教えていただけると助かります。

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

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

回答した通り各命令の最初に「SET NAMES 'SJIS';」はつけましたか? 以下のように実行してその結果をお知らせください。 SET NAMES 'SJIS'; insert into meibo(name1,name2,yubin,ken,shi,tyou,apart,tel,birth,family) values ('宮崎','一郎','880-0000','宮崎県','宮崎市','テスト町','101号室','090-0000-0000','2000/12/07',5); SET NAMES 'SJIS'; select * from meibo;

その他の回答 (1)

回答No.1

MySQLの最新バージョンでは命令の最初に「SET NAMES 'SJIS';」等で 文字コードを明示しておかないとマルチバイトの処理に窮するようです。 使用している文字コードがUTF-8の場合には「SET NAMES 'UTF8';」 EUC-JPの場合には「SET NAMES 'UJIS';」 Shift-JISの場合は「SET NAMES 'SJIS';」を 実行するようにしてみてください。 >テキストが、テーブル名や、カラム名、挿入しているデータがすべて日本語になっていますが、 これは解説書のテキストでしょうか? 挿入しているデータはともかくテーブル名とカラム名を日本語で 設定するように解説してるテキストというのものは あまり見たことがありませんが。 ただし日本語のテーブル名やカラム名での運用もそれなりの苦労が伴いますが可能です。 今はカラムごとにコメントがつけられるますので日本語名称の意義はそこまで無いような気もします。

beatclap
質問者

お礼

あれから書店へ行き5.1.30のインスタンスコンフィグウィザードを実行し、文字コードをsjisに変更しました。 status; を実行すると C:\Program Files\MySQL\MySQL Server 5.1\bin\mysql.exe Ver 14.14 Distrib 5.1.30, for Win32 (ia32) Connection id: 3 Current database: test Current user: root@localhost SSL: Not in use Using delimiter: ; Server version: 5.1.30-community MySQL Community Server (GPL) Protocol version: 10 Connection: localhost via TCP/IP Server characterset: sjis Db characterset: sjis Client characterset: sjis Conn. characterset: sjis TCP port: 3306 Uptime: 53 min 15 sec Threads: 1 Questions: 74 Slow queries: 0 Opens: 22 Flush tables: 1 Open tab les: 1 Queries per second avg: 0.23 -------------- となります。 create table meibo( name1 varchar(12), name2 varchar(12), yubin char(8), ken varchar(8), shi varchar(40), tyou varchar(120), apart varchar(80), tel varchar(20), birth date, family integer); を実行し、テーブル名やカラム名は半角英数にして、 レコードの挿入を >insert into meibo(name1,name2,yubin,ken,shi,tyou,apart,tel,birth,family) >values ('宮崎','一郎','880-0000','宮崎県','宮崎市','テスト町','101号室','090-0000-0000','2000/12/07',5); とし、レコードを作成しました。 その後に >select * from meibo; を実行すると、 日本語の部分が全部文字化けしています。 これは対処法があるのでしょうか? >これは解説書のテキストでしょうか? はい。インプレスという会社が発刊している基礎SQLっていう解説書です。 少し古い本だからでしょうか? 会社から借りています。

関連するQ&A