0

我在几篇文章中看到了这个问题的答案。但是,当我下面是来自另一篇帖子的答案时,我收到一个错误。我的目标是在脚本中执行 DML 命令时简单地将注释写到屏幕上。但是我还没有找到一个简单的方法来做到这一点。

CREATE OR REPLACE FUNCTION raise_exception(text)
RETURNS void AS $$
BEGIN
  RAISE EXCEPTION '%', $1;
END;
$$ LANGUAGE plpgsql;

像这样调用: select * from sp_send_msg('go for it');

我希望能够做这样的事情:

SELECT send_comment('Writing widgets to temporary table');
SELECT * INTO t_widgets FROM widgets;

SELECT send_comment('Writing temporary table into new widget table');
INSERT INTO new_widgets
SELECT * FROM t_widgets;

在此先感谢您提供任何有用的指导。我正在运行 PostgreSQL 8.4.7。

4

1 回答 1

2

你应该raise notice代替raise exception. 前者将显示一条消息,后者将被视为错误并中止您的交易。

于 2013-09-13T19:16:35.703 回答