0

私は多くのUUIDを扱っており、Webを読んでいるので、

pack('H*',$uuid)

文字列をデータベースに保存する前に文字列を保存して保存し、使用する

sprintf('insert .... values (%s,...)', $connection->quote($packed_uuid))

しかし、問題は、UUIDで「00」を取得するたびにNULL文字に変換され、データベースへの適切な書き込みに失敗する場合があります。私が間違っていることはありますか?

4

1 に答える 1

0

私はそれを考え出した。値を格納するときにパックするべきではなく、mysql 自体にパックさせます。

mysql> INSERT INTO uuid_demo SET id=0x1e8ef774581c102cbcfef1ab81872213, name="Kekoa";
Query OK, 1 row affected (0.00 sec)

そしてそれを選択します:

mysql> SELECT hex(id), name FROM uuid_demo;
+----------------------------------+-------+
| hex(id)                          | name  |
+----------------------------------+-------+
| 1E8EF774581C102CBCFEF1AB81872213 | Kekoa | 
+----------------------------------+-------+
1 row in set (0.00 sec)

詳細については、こちらをご覧ください

于 2012-09-12T00:47:11.380 に答える