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

mysql:9846

From: <shuichi@xxxxxxxxxx>
Date: Tue, 13 Jul 2004 15:50:33 -0700
Subject: [mysql 09846] Re: set,enumの文字方について

玉川です。

> select * from test_tbl でも
> +----+--------+-------+---------+
> | no | t_enum | t_set | varchar |
> +----+--------+-------+---------+
> |  1 | 3      | 2,3   |         |
> |  2 | 2      | 2     |         |
> |  3 | ャtト  |       | ソフト  |
> +----+--------+-------+---------+
> 
> 上のように表示されるのですが、上記のバグと同一の件なのでしょうか?

バグ#2077とは違うような気がします。

どうやら、「ソ」の文字コード「835C」の「5C」の部分がエスケープ記号の
「\」として解釈されてしまい、取り去られているのが原因のようですね。
おそらく、下2桁が5Cで終わる「十」、「表」、「申」、「予」、「圭」といった
文字でも同様の現象が起こるのではないでしょうか。

mysql> select hex('ソフト');
+---------------+
| hex('ソフト') |
+---------------+
| 835C83748367  |
+---------------+
1 row in set (0.09 sec)

mysql> select hex('ャtト');
+--------------+
| hex('ャtト') |
+--------------+
| 8383748367   |
+--------------+
1 row in set (0.00 sec)

ただし、私の環境(4.0.18/WinXP Pro)では再現できません。
正常に表示されるようです。確実にかつシンプルに再現できる
手順はありますか?

mysql> select version();
+-----------+
| version() |
+-----------+
| 4.0.18-nt |
+-----------+
1 row in set (0.00 sec)

mysql> create table t_enum(a enum('ソフト','表','十'));
Query OK, 0 rows affected (0.51 sec)

mysql> insert into t_enum values ('ソフト'),('表'),('十');
Query OK, 3 rows affected (0.41 sec)
Records: 3  Duplicates: 0  Warnings: 0

mysql> select * from t_enum;
+--------+
| a      |
+--------+
| ソフト |
| 表     |
| 十     |
+--------+
3 rows in set (0.00 sec)

私の環境では、SHOW CREATE TABLEやSHOW COLUMNS FROMを
実行した際に、エスケープ処理をしようとしているのか、「5C」が逆に
余分に追加されてしまいます。皆さんの環境ではいかがでしょうか?

mysql> show create table t_enum;
+--------+--------------------------------------------------------------------------------------+
| Table  | Create Table                                                                         |
+--------+--------------------------------------------------------------------------------------+
| t_enum | CREATE TABLE `t_enum` (
  `a` enum('ソ\フト','表\','十\') default NULL
) TYPE=MyISAM |
+--------+--------------------------------------------------------------------------------------+
1 row in set (0.00 sec)



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

      9833 2004-07-13 09:42 [Hiro Aoki <h-aoki@xx] set,enumの文字方について                
      9838 2004-07-13 12:49 ┗[Shuichi Tamagawa <sh]                                       
      9844 2004-07-13 19:13  ┗[hiroaki aoki <h-aoki]                                     
->    9846 2004-07-14 07:50   ┗[<shuichi@xxxxxxxxxx>]                                   
      9861 2004-07-15 09:41    ┗[hiroaki aoki <h-aoki] Re: set,enumの文字について      
      9864 2004-07-15 11:37     ┗[<shuichi@xxxxxxxxxx>]