如何在 CL/400 中使用 runqry 命令执行带有 where 条件的 db2 查询
How to execute a db2 query with a where condition using runqry command in CL/400
我试图使用 CLLE 的 runqry 命令执行 IBM DB2 查询,但无法执行,因为它包含 where 条件,而且我无法在 runqry 命令中定义主机变量。这可以通过使用 runqry 命令而不使用 qryslt 来完成吗?
请帮帮我。
RUNQRY
不支持变量。
您可以在 Query/400 查询中定义变量,但必须使用 Start Query Management Query (STRQMQRY)
命令来 运行 查询。
务必注明:
Allow information from QRYDFN . ALWQRYDFN *YES`
这里有一个 IBM document 说明如何操作。
Select Records
Type comparisons, press Enter. Specify OR to start each new group.
Tests: EQ, NE, LE, GE, LT, GT, RANGE, LIST, LIKE, IS, ISNOT...
AND/OR Field Test Value (Field, Number, 'Characters', or ...)
GLCOMP EQ :COMPANY
AND GLBRAN EQ :BRANCH
AND GLACC EQ :ACCOUNT
-----------------------------------------------------------------------
STRQMQRY QMQRY(library/qry-name) ALWQRYDFN(*YES) +
QMFORM(*QMQRY) SETVAR((COMPANY 1) (BRANCH 1) (ACCOUNT 12000))
我试图使用 CLLE 的 runqry 命令执行 IBM DB2 查询,但无法执行,因为它包含 where 条件,而且我无法在 runqry 命令中定义主机变量。这可以通过使用 runqry 命令而不使用 qryslt 来完成吗?
请帮帮我。
RUNQRY
不支持变量。
您可以在 Query/400 查询中定义变量,但必须使用 Start Query Management Query (STRQMQRY)
命令来 运行 查询。
务必注明:
Allow information from QRYDFN . ALWQRYDFN *YES`
这里有一个 IBM document 说明如何操作。
Select Records Type comparisons, press Enter. Specify OR to start each new group. Tests: EQ, NE, LE, GE, LT, GT, RANGE, LIST, LIKE, IS, ISNOT... AND/OR Field Test Value (Field, Number, 'Characters', or ...) GLCOMP EQ :COMPANY AND GLBRAN EQ :BRANCH AND GLACC EQ :ACCOUNT -----------------------------------------------------------------------
STRQMQRY QMQRY(library/qry-name) ALWQRYDFN(*YES) +
QMFORM(*QMQRY) SETVAR((COMPANY 1) (BRANCH 1) (ACCOUNT 12000))