mysql:15606
From: HIRATSUKA Sadao <HIRATSUKA Sadao <hiratsuka.sadao@xxxxxxxxxx>>
Date: Tue, 02 Aug 2011 16:30:23 +0900
Subject: [mysql 15606] Re: Indexをつけるとと、update のwhere 句マッチしない [Ver.4.1.23]
こんにちは、平塚です。 On Tue, 2 Aug 2011 13:26:57 +0900 野副 勝己 <nozoe@xxxxxxxxxx> wrote: > OS: Redhat ES4.5 > MySQL: Ver. 4.1.23 > `mac_id_no` varchar(8) NOT NULL DEFAULT '', > KEY `mac_id_no` (`mac_id_no`) > ) ENGINE=InnoDB AUTO_INCREMENT=15000 DEFAULT CHARSET=utf8 以下のバグにヒットしているように見えます。 Bug #28878 InnoDB tables with UTF8 character set and indexes cause wrong result for DML http://bugs.mysql.com/bug.php?id=28878 もしUTF-8が必須でなければ、mac_id_no のみ 別のキャラクタセットにしてみるのはいかがでしょうか。 | Welcome to the MySQL monitor. Commands end with ; or \g. | Your MySQL connection id is 1 to server version: 4.1.22-community-max-nt | | mysql> alter table test modify c2 varchar(10) character set latin1; | Query OK, 0 rows affected (0.22 sec) | Records: 0 Duplicates: 0 Warnings: 0 | | mysql> show create table test\G | *************************** 1. row *************************** | Table: test | Create Table: CREATE TABLE `test` ( | `c1` int(11) NOT NULL default '0', | `c2` varchar(10) character set latin1 default NULL, | PRIMARY KEY (`c1`) | ) ENGINE=InnoDB DEFAULT CHARSET=utf8 | 1 row in set (0.00 sec) また、別のバグレポートですと、 Bug #31395 equality match in a where clause against an utf8 field fails http://bugs.mysql.com/bug.php?id=31395 ・like検索にすると回避できる ・4.1.22では発生しない という情報があります。 -- 平塚貞夫 hiratsuka.sadao@xxxxxxxxxx
15605 2011-08-02 13:26 [野副 勝己 <nozoe@xx] Indexをつけるとと、update のwhere 句マッチしない [Ver.4.1.23] -> 15606 2011-08-02 16:30 ┗[HIRATSUKA Sadao <hir] 15607 2011-08-02 17:35 ┗[野副 勝己 <nozoe@xx] 15608 2011-08-02 20:30 ┗[HIRATSUKA Sadao <hir] 15609 2011-08-03 10:46 ┗[野副 勝己 <nozoe@xx]