mysql:8041
From: きたぢま <きたぢま <kitajima@xxxxxxxxxx>>
Date: Wed, 16 Jul 2003 13:33:45 +0900
Subject: [mysql 08041] Re: 強制的に CHAR 型にする方法
これは[SUGAWARA Hajime]様が[03/07/16 12:26:04]に送信された、 [[mysql 08034] Re: 強制的に CHAR 型にする方法]への返信です。 〆 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ご返答ありがとうございます。 SUGAWARA> MySQLのドキュメントによるとANSI SQL92ではCHAR型で後ろのスペースをとっ SUGAWARA> てもよいことになっているらしい、です。 SUGAWARA> (というか、厳密に決まっていないんじゃないかな?) えぇ!そうだったんですか。勉強不足でした。 ということは、皆さんの言うとおり、RPADを使って確実に固定長で取る方法が一 番ベストなんでしょうね。 SUGAWARA> > Server のバグは、 VARCHAR でも同様に行ってしまうことです SUGAWARA> (なお、ここで「バグ」と言っているのは右側をスペースで埋めないことではな SUGAWARA> く、VARCHARにデータを入れるときに右側に空白文字があった場合にそれらが削 SUGAWARA> 除されることを意味しています。念のため) VARCHARでは、取り出すときだけでなく、格納するときも末尾空白を自動削除す るというのがバグなんですね。 取り出すときは結果CHARもVARCHARも同じになるという認識で合っているのでしょ うか? SUGAWARA> なので、ANSI互換でもきたぢまさんの望まれるようにはならないんじゃないか SUGAWARA> な〜? と思います。 結構あいまいなところも多いんですね。ANSIの規約というのも勉強する必要があ るようです。 情報ありがとうございました。 きたぢま <kitajima@xxxxxxxxxx> 日本MySQLユーザ会 http://www.mysql.gr.jp/ ━━━━────────────────────────────
8025 2003-07-15 13:18 [きたぢま <kitajima@x] 強制的に CHAR 型にする方法 8026 2003-07-15 13:49 ┣[SUGAWARA Hajime <sug] 8028 2003-07-15 15:30 ┃┗[きたぢま <kitajima@x] 8029 2003-07-15 18:12 ┃ ┗[Kazuaki Inagaki <ina] 8032 2003-07-16 11:00 ┃ ┗[きたぢま <kitajima@x] 8033 2003-07-16 11:05 ┃ ┣[箱田賢一 <hakoda@xxx] 8039 2003-07-16 13:29 ┃ ┃┗[きたぢま <kitajima@x] 8034 2003-07-16 12:26 ┃ ┗[SUGAWARA Hajime <sug] -> 8041 2003-07-16 13:33 ┃ ┗[きたぢま <kitajima@x] 8044 2003-07-16 15:00 ┃ ┗[SUGAWARA Hajime <sug] 8048 2003-07-17 11:55 ┃ ┗[きたぢま <kitajima@x] 8043 2003-07-16 14:51 ┗["MIYATSU Kazunari" <] 8047 2003-07-17 11:47 ┗[きたぢま <kitajima@x]