【发布时间】:2026-01-22 22:55:01
【问题描述】:
我需要创建搜索(如 '%-99' 或 '%NON%')---在所有列中的 DB2 中的 SYS 中的所有表 -- 下面的代码 ---请帮助---这是测试代码---但是我有 DB2 数据库错误:错误 [42703] [IBM][DB2/LINUXX8664] SQL0206N “WHERE”在使用它的上下文中无效。
声明全局临时表会话.TEMP_DINAMIC_TEST_SEARCH ( 制表符 VARCHAR(128) , 表模式 VARCHAR(128) , 选项卡名称 VARCHAR(128) , COLUMN_NAME VARCHAR(128) , ROW_COUNT BIGINT ) 在提交时保留未记录的行 ;
BEGIN
FOR C AS CUR CURSOR WITH HOLD FOR
SELECT 'INSERT INTO SESSION.TEMP_DINAMIC_TEST_SEARCH SELECT '''
||''' ,''' || TABLE_SCHEM || ''',''' || TABLE_NAME || ''',''' || COLUMN_NAME || ''', COUNT( DISTINCT(' || COLUMN_NAME || ')) FROM '
|| '"' || TABLE_SCHEM || '"."' || TABLE_NAME|| '"' ||WHERE|| '"' || COLUMN_NAME || '"' || LIKE || '"' ||'%-99'|| '"' || AS S
FROM SYSIBM.SQLCOLUMNS
WHERE TABLE_SCHEM = 'DWD' AND TABLE_NAME LIKE 'T_X_%'
WITH UR
DO
EXECUTE IMMEDIATE C.S;
COMMIT;
END FOR;
END
【问题讨论】:
标签: db2