在pl / pgsql中生成UUID

时间:2013-01-07 12:14:26

标签: postgresql plpgsql

我想在pl / pgsql中生成UUID,我已经编写了这段代码。我没有错误,但我无法在输出中看到UUID,并且消息也没有rais。

CREATE OR REPLACE FUNCTION generatesurrogat() RETURNS uuid[] AS
$BODY$DECLARE 
uid UUID;
BEGIN
uid:=(select uuid_generate_v1());
RAISE NOTICE 'My UUID is',uid;
return uid;
END$BODY$
你可以告诉我如何解决我的问题?

1 个答案:

答案 0 :(得分:2)

这个功能就像一个魅力

CREATE OR REPLACE FUNCTION generatesurrogat() RETURNS uuid AS
$BODY$DECLARE 
uid UUID;
BEGIN
uid:=(select uuid_generate_v1());
RAISE NOTICE 'My UUID is %',uid;
return uid;
END$BODY$
LANGUAGE plpgsql VOLATILE
COST 100;

您的%语法错过了RAISE NOTICE。您还错过了语言规范

我假设你正在使用PGAdmin3。如果是这样,您可以在 输出窗格的 消息标签 中找到该消息。

希望它有所帮助。