我们正在为Netezza使用Aginity,我想知道是否有人知道与TSQL "PRINT“函数在NZSQL中的等效?
我们使用它打印错误时,有人试图执行一个查询,当它需要重写数据时,我找到的唯一解决方案是使用-t命令行“”。
提前感谢!
发布于 2015-02-12 22:00:01
您可以使用this来实现这一点,如文档所示的这里。
下面是一个示例:
CREATE OR REPLACE PROCEDURE RAISE_DEMO()
RETURNS VARCHAR(ANY)
EXECUTE AS OWNER
LANGUAGE NZPLSQL AS
BEGIN_PROC
DECLARE
MYNAME varchar;
BEGIN
MYNAME := 'SCOTT';
RAISE NOTICE 'Hello, %', MYNAME;
END;
END_PROC;TESTDB.ADMIN(ADMIN)=> call raise_demo();
NOTICE: Hello, SCOTT
RAISE_DEMO
------------
(1 row)如果将通知更改为异常,则执行将停止。
CREATE OR REPLACE PROCEDURE RAISE_DEMO()
RETURNS VARCHAR(ANY)
EXECUTE AS OWNER
LANGUAGE NZPLSQL AS
BEGIN_PROC
DECLARE
MYNAME varchar;
BEGIN
MYNAME := 'SCOTT';
RAISE EXCEPTION 'Hello, %, this is an exception', MYNAME;
RAISE NOTICE 'You should not see this message';
END;
END_PROC;TESTDB.ADMIN(ADMIN)=> call raise_demo();
ERROR: Hello, SCOTT, this is an exception
TESTDB.ADMIN(ADMIN)=>这种行为记录在我在顶部提供的链接中。
https://stackoverflow.com/questions/28487940
复制相似问题