我需要将十六进制值存储到数据库表中,有人可以推荐我需要使用的属性数据类型吗?
提前感谢。
我需要将十六进制值存储到数据库表中,有人可以推荐我需要使用的属性数据类型吗?
提前感谢。
你可以将它存储在普通整数类型中,如果你想要转换成十六进制字符串,这并不太困难。
在postgresql中已经有一个to_hex
函数。SELECT to_hex(42)
应该会输出2a
。但是要做相反的操作需要创建一个新的存储过程(参考自http://www.varlena.com/GeneralBits/104.php)。
CREATE FUNCTION hex2dec(t text) RETURNS integer AS
$$
DECLARE
r RECORD;
BEGIN
FOR r IN EXECUTE 'SELECT x'''||t||'''::integer AS hex' LOOP
RETURN r.hex;
END LOOP;
END
$$ LANGUAGE plpgsql IMMUTABLE STRICT;