dポイントプレゼントキャンペーン実施中!

MySQLの関数でCHARと言うのがありますが、この関数に与えられる数値は0x0000から0x1ffffffffで良いのでしょうか?

実験したこと:
SELECT CHAR( 0x200000000 );
↑空白文字が返ってくる。

SELECT MD5(CHAR(0x0000)), MD5(CHAR(0x0001));
↑この二つは異なった暗号文字列を返す。

SELECT MD5(CHAR(0x1fffffffe)), MD5(CHAR(0x1ffffffff));
↑この二つは異なった暗号文字列を返す。

※サーバはshift_jis コード表に沿った文字を返してくる。

CHARには保障された下限値、上限値があるのでしょうか?
サーバー等、環境に左右されるのですか?
左右されない下限値、上限値はありますか?

以上、宜しくお願いします。

A 回答 (1件)

単純に考えれば文字コードから文字列を返すのですから


00~FFまででしょう。
たとえばSJISで「あ」は82A0ですから
select concat(char(0x82),char(0xA0))
とすれば「あ」が表示されます。
    • good
    • 0
この回答へのお礼

00~FFまでの間に存在しない文字コードもあるようでした。
ありがとうございました。

お礼日時:2007/09/26 14:37

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!