测试 iSeries SQL 存储过程中是否存在临时表

aje*_*jeh 1 db2 iseries

如果 DB2 for IBM i 7.1 中已经存在全局临时表,那么测试的语法是什么?

我试过这个DECLARE GLOBAL TEMPORARY TABLE

SELECT * FROM QSYS2.SYSTABLES WHERE SYSTEM_TABLE_SCHEMA = 'QTEMP';
Run Code Online (Sandbox Code Playgroud)

它返回了一个空的结果集。永久表似乎包含在该视图中,但不包含临时表。

最终,我需要有条件地删除临时表或截断/删除数据(如果存在)。

小智 6

添加WITH REPLACEDECLARE GLOBAL TEMPORARY TABLE语句的末尾。这将在 QTEMP 中创建您的表,无论该表是否已经存在。