我的pg上的上,sql-server-style的new_uuid
shell里面,建立语言:
[postgres@lacl-001 /root]$createlang -d lacl plpgsql
然后到psql里面创建一个函数new-uuid():
CREATE OR REPLACE FUNCTION new_uuid()
RETURNS text AS
'
declare
vWork1 text;
vWork2 text;
vMac text;
begin
-- replace vMac with the mac of your own box
vMac=\'00:0D:56:FD:A0:DB\';
vWork1 := md5(vMAC || now());
vWork2 := SUBSTRING(vWork1, 1, 8) ||\'-\'|| SUBSTRING(vWork1,9,4) ||\'-\'|| SUBSTRING(vWork1,13,4) ||\'-\'|| SUBSTRING(vWork1,17,4) ||\'-\'|| SUBSTRING(vWork1,21,12);
RETURN cast(vWork2 as varchar(36));
end;
'
LANGUAGE 'plpgsql' VOLATILE;