我在INFORMIX数据库上使用SQL存储过程 我使用
生成DEBUG文件SET DEBUG FILE TO
我需要打印Debug语句 例如:打印临时表中的行数。
其中一种方法可能是
RAISERROR('your message here!!!',0,1) WITH NOWAIT
但我不确定如何使用 RAISE ERROR
方法打印表的数量。
答案 0 :(得分:1)
您可以分两步完成:
DEFINE temp_count INTEGER;
SELECT COUNT(*) INTO temp_count FROM TempTable;
TRACE 'Count of rows in TempTable is ', temp_count;
唯一要检查的是,您是否可以像在TRACE语句中那样逐段构建消息。如果没有,那么您可以在将字符串提供给TRACE之前构建字符串:
DEFINE trace_message VARCHAR(255);
LET trace_message = 'Count of rows in TempTable = ' || temp_count;
TRACE trace_message;
答案 1 :(得分:1)
sqlca.sqlerrd [3]包含最后一个语句中处理的行数。
答案 2 :(得分:0)
SET DEBUG FILE TO '/tmp/foo.trace';
TRACE OFF;
TRACE ON;
使用上述3个语句来打印调试存储过程。