之前用sqlserver,获取uuid,获取直接select newid()就好了,但是postgresql没有这种函数,只好自己写个了。
如下:
CREATE OR REPLACE FUNCTION uuid()
RETURNS text AS
$$
declare
str1 text;
str2 text;
Mac text;
begin
-- MAC地址
Mac='aa:aa:aa:aa:aa:aa';
str1 := md5(MAC || now());
str2 := SUBSTRING(str1, 1,8)||'-'|| SUBSTRING(str1,9,4) ||'-'|| SUBSTRING(str1,13,4) ||'-'|| SUBSTRING(str1,17,4) ||'-'|| SUBSTRING(str1,21,12);
RETURN cast(str2 as varchar(36));
end;
$$
LANGUAGE 'plpgsql' VOLATILE;
然后就可以了。