在INFORMIX中打印调试语句

时间:2015-01-14 10:56:50

标签: debugging stored-procedures informix

我在INFORMIX数据库上使用SQL存储过程 我使用

生成DEBUG文件
SET DEBUG FILE TO 

我需要打印Debug语句 例如:打印临时表中的行数。

其中一种方法可能是

RAISERROR('your message here!!!',0,1) WITH NOWAIT

但我不确定如何使用 RAISE ERROR 方法打印表的数量。

3 个答案:

答案 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个语句来打印调试存储过程。