Entries


上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

-件のコメント

[C286] 文字コード

はじめまして。最近PHPとMySQLを勉強始めました。
ぷぎえもんさんと同じようにエラー1366が出ました。
ぐぐっても対処法が見つからないんじゃなくて、
対処法が多すぎて読んでたらもう夜中の3時。
早くも独学の壁を感じています。

なんで最初から1文字=4バイトにしておかなかったんだヽ(`Д´)ノ
  • 2008-12-28
  • 投稿者 : クマ吉
  • URL
  • 編集

[C287]

>>クマ吉さん

コメントありがとうございます.
文字化け大変ですよね.
ぷぎえもんも独学でなんとかやっています.
phpだとmysqlと接続してからSET NAMESでエンコードの種類を指定してあげればたいていOKな気がします.

$connをコネクションとして

mysql_query("SET NAMES utf8",$conn);
とか
$conn -> query("SET NAMES utf8;");

UTF8で設定する例だとこんな感じでしょうか.
これのおかげ最近は文字化けをあまりしなくなりました.
  • 2008-12-29
  • 投稿者 : ぷぎえもん
  • URL
  • 編集

[C290] やっとスタート地点に立てた\( ̄▽ ̄ )/

おかげさまで文字化けがなくなりました。ありがとうございます。

さらにsjisしか扱えないコマンドプロンプトをやめて
XAMPPに付属していたphpMyAdminで操作したら、
insertエラーも「ソ」がバグるのも無くなりました。

挫折しかけましたがまだ頑張れそうです。
  • 2008-12-30
  • 投稿者 : クマ吉
  • URL
  • 編集

[C291]

>>クマ吉さん

おめでとうございます.
文字化けしなったのですね.

XAMPP使ってないんですけどphpMyAdminにそんな機能があるのは知らなかったです.便利だなあ.

文字化けは一度クリアしてしまうと以降それほど問題にならなくなります.がんばってください!!
  • 2008-12-31
  • 投稿者 : ぷぎえもん
  • URL
  • 編集

[C387] ありがとうございます。

ありがとうございます。四苦八苦していましたが、解決致しました。素晴らしい情報に感謝申し上げます。
  • 2010-05-31
  • 投稿者 : ニコライ
  • URL
  • 編集

[C388] Re: ありがとうございます。

>>ニコライさん

コメントありがとうございます。
お役に立てたようで嬉しいです!!

> ありがとうございます。四苦八苦していましたが、解決致しました。素晴らしい情報に感謝申し上げます。

  • 2010-06-01
  • 投稿者 : ぷぎえもん
  • URL
  • 編集

[C393] 有難うございました!

ハマりきっていたところに、ぷぎえもんさんに助けられました。有難うございました。インターネット、難しいけど楽しいですね。がんばって行きましょう!
  • 2010-08-16
  • 投稿者 : Fowlmouth
  • URL
  • 編集

[C394]

>>Fowlmouthさん

コメントありがとうございます
お力になれたようでよかったです
  • 2010-08-18
  • 投稿者 : ぷぎえもん
  • URL
  • 編集

[C395] リンク貼らせていただきました。

ぷぎえもんさんのサイトはとても便利なので、私のブログを訪れた人にも紹介したいと思い、真に勝手ながらリンクを貼らせていただきました。もしご迷惑でしたらすぐに消しますので、お手数ですがご連絡お願いいたします。

[C396] Re: リンク貼らせていただきました。

>>Fowlmouthさん

ありがとうございます!恐縮です。
ちょこちょこサイトのぞかせてもらいますね。

> ぷぎえもんさんのサイトはとても便利なので、私のブログを訪れた人にも紹介したいと思い、真に勝手ながらリンクを貼らせていただきました。もしご迷惑でしたらすぐに消しますので、お手数ですがご連絡お願いいたします。
  • 2010-08-27
  • 投稿者 : ぷぎえもん
  • URL
  • 編集

[C401] 有難う御座います!解決しました!

文字化け解決しました!
FAQサイトよりも詳しく手順がのっていて大変たすかりました。
有難う御座いました!

[C402] Re: 有難う御座います!解決しました!

>> mitomanさん

コメントどうもです.
お役に立てたようでよかったです.

> 文字化け解決しました!
> FAQサイトよりも詳しく手順がのっていて大変たすかりました。
> 有難う御座いました!
  • 2010-09-12
  • 投稿者 : ぷぎえもん
  • URL
  • 編集

[C439]

ありがとうございました!私もutf8で統一してもうまくいかなかったので、仰るように一部sjisに変えたらうまくいきました!
  • 2011-12-05
  • 投稿者 :
  • URL
  • 編集

[C440]

コメントありがとうございます。
解決できたみたいでよかったです。
  • 2011-12-06
  • 投稿者 : ぷぎえもん
  • URL
  • 編集

コメントの投稿

新規

※設定NGワードは『http』です

投稿した内容は管理者にだけ閲覧出来ます

-件のトラックバック

[T12] mysqlにゴンゾをinsertする

コマンドプロンプト上でmysqlにinsert文を流していたらあるところで止まってしまいました. 原因を調べているとカタカタの『ソ』が最後にある...
トラックバックURL
http://pugiemonn.blog6.fc2.com/tb.php/727-123d6e12

初めてのMysqlと文字化け


初めてのMysqlと文字化け


どんなタイトルだよって感じですねw.
先月Mysqlコマンドプロンプトで触ってみたら全角文字の日本語が文字化けしまくって結構むかつきました.
検索したら結構私と同じような症状が出ている人がいるみたいでした.
それでいて検索された回答とか見てもほとんど解決しないわけですw.
検索のやり方が悪かったのかな??
素人はみんな文字化けするんじゃないかなってことで記念に書いてみます.



mysqlの設定はutf8にする

エンコードはutf8がブームらしいです.といういことでutf8にします.
Mysqlは5.1で設定はutf8です.
Mysqlフォルダ内にあるmy.iniにはdefault-character-set=utf8と書いてあるかと思います.
Mysqlをインストールするときにutf8を選択しておけばこうなっていると思います.
もしutf8以外があったらMysqlのウィザードからutf8を選択して設定をやりなおします.
あとデータベースとかテーブルも作りなおしたほうが確実です。
練習用のテーブルを作る

Mysqlを立ち上げて,『test』という名前のデータベースを作り,『niceboat』という名前のテーブルを作りました.
tableをつくるsqlはこんな感じです.
CREATE TABLE niceboat (
id int(2) NOT NULL auto_increment,
name varchar(255) ,
caption varchar(255),
PRIMARY KEY (id)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;

実行結果
createtable.png


Mysqlのcharacter設定をみていみる

Mysqlのエンコード設定を見てみます.
コマンドプロンプトに以下のように打ってEnterを押します.

show variables like '%char%';


実行結果
charenter.png


character_setがすべてutf8になっています.
私は全部utf8になっているので問題ないだろうと考えました.
しかしこれだと日本語が入力できませんでした.

utf8で全角文字を入力してみるテスト

試しに『niceboat』テーブルにinsertしてみます.
テストなので文字列は適当です.
コマンドプロンプトへの文字の入力はテキストエディタに打ってからペーストしています.

Insert INTO niceboat (name, caption) VALUES
('ラグナロク','ガンホーのゲーム'),
('パンヤ','ゲームポットのゲーム'),
('トリックスター','ジークレストのゲーム');


実行結果
inserterror.png

エラー1366が出ました.
ERROR 1366 (HY000): Incorrect string value: '\x83\x89\x830.....

これはstringが間違ってるよと言われているみたいです.

Mysqlをutf8で使うときdbの中身がutf8であればいいらしく,他の設定はutf8以外でもいいみたいです.
保障はできませんけどw.

Mysqlのcharacter設定を変えてみる

コマンドプロンプトに以下を打ち込みEnterを押します.

SET character_set_client = sjis;
SET character_set_connection = utf8;
SET character_set_results = sjis;


実行結果
charset.png


再び以下を入力しcharacterを見てみます.
show variables like '%char%';

実行結果
charsetre.png

clientとresultsのところがsjisになりました.

文字化けしないかテストをする

再びINSERT文を流し日本語が入力できるか確認してみます.
Insert INTO niceboat (name, caption) VALUES
('ラグナロク','ガンホーのゲーム'),
('パンヤ','ゲームポットのゲーム'),
('トリックスター','ジークレストのゲーム');

実行結果
insertok.png


character_setを変更したことによって今度はERROR 1366がでません.
INSERT文を入力してコマンドプロンプト上から日本語を入力することができました.
ちなみにcharacter_setがすべてutf8の場合,Mysqlに既に日本語が入っている状態からSELECT文を流すと文字化けしました.こちらもcharacter_setを変えることでコマンドプロンプト上で全角文字が文字化けしなくなりました.


私はこれで使えるからいいやって感じで使ってみました.
あとは自己責任で!

追記:
set names sjis;
確かこれでもいけた気がするのでお試しください.たしかset names sjis;が効かない環境だったため上に書いたやり方にした気がします.


Head First SQL 頭とからだで覚えるSQLの基本Head First SQL 頭とからだで覚えるSQLの基本
(2008/06/09)
Lynn Beighley

商品詳細を見る

14件のコメント

[C286] 文字コード

はじめまして。最近PHPとMySQLを勉強始めました。
ぷぎえもんさんと同じようにエラー1366が出ました。
ぐぐっても対処法が見つからないんじゃなくて、
対処法が多すぎて読んでたらもう夜中の3時。
早くも独学の壁を感じています。

なんで最初から1文字=4バイトにしておかなかったんだヽ(`Д´)ノ
  • 2008-12-28
  • 投稿者 : クマ吉
  • URL
  • 編集

[C287]

>>クマ吉さん

コメントありがとうございます.
文字化け大変ですよね.
ぷぎえもんも独学でなんとかやっています.
phpだとmysqlと接続してからSET NAMESでエンコードの種類を指定してあげればたいていOKな気がします.

$connをコネクションとして

mysql_query("SET NAMES utf8",$conn);
とか
$conn -> query("SET NAMES utf8;");

UTF8で設定する例だとこんな感じでしょうか.
これのおかげ最近は文字化けをあまりしなくなりました.
  • 2008-12-29
  • 投稿者 : ぷぎえもん
  • URL
  • 編集

[C290] やっとスタート地点に立てた\( ̄▽ ̄ )/

おかげさまで文字化けがなくなりました。ありがとうございます。

さらにsjisしか扱えないコマンドプロンプトをやめて
XAMPPに付属していたphpMyAdminで操作したら、
insertエラーも「ソ」がバグるのも無くなりました。

挫折しかけましたがまだ頑張れそうです。
  • 2008-12-30
  • 投稿者 : クマ吉
  • URL
  • 編集

[C291]

>>クマ吉さん

おめでとうございます.
文字化けしなったのですね.

XAMPP使ってないんですけどphpMyAdminにそんな機能があるのは知らなかったです.便利だなあ.

文字化けは一度クリアしてしまうと以降それほど問題にならなくなります.がんばってください!!
  • 2008-12-31
  • 投稿者 : ぷぎえもん
  • URL
  • 編集

[C387] ありがとうございます。

ありがとうございます。四苦八苦していましたが、解決致しました。素晴らしい情報に感謝申し上げます。
  • 2010-05-31
  • 投稿者 : ニコライ
  • URL
  • 編集

[C388] Re: ありがとうございます。

>>ニコライさん

コメントありがとうございます。
お役に立てたようで嬉しいです!!

> ありがとうございます。四苦八苦していましたが、解決致しました。素晴らしい情報に感謝申し上げます。

  • 2010-06-01
  • 投稿者 : ぷぎえもん
  • URL
  • 編集

[C393] 有難うございました!

ハマりきっていたところに、ぷぎえもんさんに助けられました。有難うございました。インターネット、難しいけど楽しいですね。がんばって行きましょう!
  • 2010-08-16
  • 投稿者 : Fowlmouth
  • URL
  • 編集

[C394]

>>Fowlmouthさん

コメントありがとうございます
お力になれたようでよかったです
  • 2010-08-18
  • 投稿者 : ぷぎえもん
  • URL
  • 編集

[C395] リンク貼らせていただきました。

ぷぎえもんさんのサイトはとても便利なので、私のブログを訪れた人にも紹介したいと思い、真に勝手ながらリンクを貼らせていただきました。もしご迷惑でしたらすぐに消しますので、お手数ですがご連絡お願いいたします。

[C396] Re: リンク貼らせていただきました。

>>Fowlmouthさん

ありがとうございます!恐縮です。
ちょこちょこサイトのぞかせてもらいますね。

> ぷぎえもんさんのサイトはとても便利なので、私のブログを訪れた人にも紹介したいと思い、真に勝手ながらリンクを貼らせていただきました。もしご迷惑でしたらすぐに消しますので、お手数ですがご連絡お願いいたします。
  • 2010-08-27
  • 投稿者 : ぷぎえもん
  • URL
  • 編集

[C401] 有難う御座います!解決しました!

文字化け解決しました!
FAQサイトよりも詳しく手順がのっていて大変たすかりました。
有難う御座いました!

[C402] Re: 有難う御座います!解決しました!

>> mitomanさん

コメントどうもです.
お役に立てたようでよかったです.

> 文字化け解決しました!
> FAQサイトよりも詳しく手順がのっていて大変たすかりました。
> 有難う御座いました!
  • 2010-09-12
  • 投稿者 : ぷぎえもん
  • URL
  • 編集

[C439]

ありがとうございました!私もutf8で統一してもうまくいかなかったので、仰るように一部sjisに変えたらうまくいきました!
  • 2011-12-05
  • 投稿者 :
  • URL
  • 編集

[C440]

コメントありがとうございます。
解決できたみたいでよかったです。
  • 2011-12-06
  • 投稿者 : ぷぎえもん
  • URL
  • 編集

コメントの投稿

新規

※設定NGワードは『http』です

投稿した内容は管理者にだけ閲覧出来ます

1件のトラックバック

[T12] mysqlにゴンゾをinsertする

コマンドプロンプト上でmysqlにinsert文を流していたらあるところで止まってしまいました. 原因を調べているとカタカタの『ソ』が最後にある...
トラックバックURL
http://pugiemonn.blog6.fc2.com/tb.php/727-123d6e12

Appendix

プロフィール

川崎修

  • Author:川崎修
  • インターネット大好き!
    調布周辺で自宅警備してます



    メール:pugiemonn@gmail.com
    skype:pugiemonn
    twilog:Twilog
    mixi:mixi
    facebook:facebook
My Profile by iddy
FC2ブログ

カレンダー

03 | 2017/04 | 05
- - - - - - 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 - - - - - -

最近の記事

Twitter

コミュニティ

ブログ内検索

ブロとも申請フォーム

この人とブロともになる

Adsense

月別アーカイブ

はてぶ数

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。