[前][次][番号順一覧][スレッド一覧]

mysql:2622

From: 藤吉 克己 <藤吉 克己 <fujiyoshi@xxxxxxxxxx>>
Date: Fri, 20 Oct 2000 21:29:38 +0900
Subject: [mysql 02622] 256バイト超の BLOB 型インデックスが正しく処理されません。

藤吉です。

BLOB型のカラムに300バイトのプライマリキーを指定したのですが、MySQ
Lはキー長を44バイトと認識します(インデックスも同様です)。
255バイトまでは正しくキー長を認識します。
キー長に256バイトを指定すると、MySQLはキー長0バイト、300バイトを
指定すると44バイトとなります。
動きを見ると、指定キー長が256バイト以上の場合、256バイトを減算している
?(インデックス長を1バイトで管理していて桁落ちしている?)ように思います。

マニュアルにはキー長の最大値は500バイトとなっているので、300バイトは問
題無く処理されてもいいと思います。
この問題に遭遇された方、対処方法をご教授願いたく、よろしくお願い致します。

<環境>
 Mysql 3.23.25-beta(MyISAM ) , HP-UX 11.00

<テーブル定義>
CREATE TABLE test(
    data1          BLOB                     NOT NULL,
    〜途中省略〜
    PRIMARY KEY     (data1(300))
);

<show index>
mysql> show index from test;
+-----+----------+-------------+...+-------+...+
| Table  | Non_unique | Key_name         |...| Sub_part | ...|
+-----+----------+-------------+...+-------+...+
| test   |                0 | PRIMARY           |...|         44 | ...|
+-----+----------+-------------+...+-------+...+
表示内容は一部省略しています。


[前][次][番号順一覧][スレッド一覧]

->    2622 2000-10-20 21:29 [藤吉 克己 <fujiyosh] 256バイト超の BLOB 型インデックスが正しく処理されません。
      2624 2000-10-21 00:48 ┣[<takeshi@xxxxxxxxxx>]                                       
      2644 2000-10-23 17:33 ┃┗[藤吉 克己 <fujiyosh]                                     
      2646 2000-10-24 00:05 ┃ ┗[<takeshi@xxxxxxxxxx>]                                   
      2627 2000-10-21 01:04 ┗[とみたまさひろ <tomm]                                       
      2638 2000-10-22 14:22  ┗[<cotton@xxxxxxxxxx> ] SQL 文の長さについて。              
      2640 2000-10-22 15:32   ┗[Tomohiro Takahashi <]                                   
      2641 2000-10-22 15:57    ┗[<cotton@xxxxxxxxxx> ]