首页 > 数据库技术 > 详细

MySQL的binary类型操作

时间:2014-10-24 13:07:43      阅读:624      评论:0      收藏:0      [点我收藏+]

示例数据表:

CREATE TABLE test_bin (
   bin_id BINARY(16) NOT NULL
) Engine=InnoDB;

插入数据(内容是一个32位的UUID字符串值):

INSERT INTO test_bin(bin_id) VALUES(UNHEX(‘FA34E10293CB42848573A4E39937F479‘));
INSERT INTO test_bin(bin_id) VALUES(UNHEX(?));
或
INSERT INTO test_bin(bin_id) VALUES(x‘FA34E10293CB42848573A4E39937F479‘);

查询数据:

SELECT HEX(bin_id) AS bin_id FROM test_bin;

SELECT HEX(bin_id) AS bin_id FROM test_bin WHERE bin_id = UNHEX(‘FA34E10293CB42848573A4E39937F479‘);
SELECT HEX(bin_id) AS bin_id FROM test_bin WHERE bin_id = UNHEX(?);

SELECT HEX(bin_id) AS bin_id FROM test_bin WHERE bin_id = x‘FA34E10293CB42848573A4E39937F479‘;

查询结果:
bin_id
--------------------------
FA34E10293CB42848573A4E39937F479


备注:使用MySQL内置的 UUID() 创建一个函数返回 BINARY(16)类型的UUID值

CREATE FUNCTION uu_id() RETURNS binary(16) RETURN UNHEX(REPLACE(UUID(),‘-‘,‘‘));
或
CREATE FUNCTION uu_id() RETURNS binary(16) RETURN UNHEX(REVERSE(REPLACE(UUID(),‘-‘,‘‘)));

使用:
INSERT INTO test_bin(bin_id) VALUES(uu_id());


MySQL的binary类型操作

原文:http://my.oschina.net/jsan/blog/336898

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!