使用 Oracle Apex apex_data_export.download,where 子句被忽略。输出显示 OUTPUT 列中每一行的内容。
代码在进程类型执行代码中运行,在区域之后执行。我需要使用在页面加载之前就有值的 :P0_SUB 的值。where 子句有误吗?进程如何访问 :P0_SUB 的值?我需要更改执行点吗?
代码
l_context := apex_exec.open_query_context(
p_location => apex_exec.c_location_local_db,
p_sql_query => 'select output from TFA_USER',
p_where_clause => 'SUB = ' ||:P0_SUB);
l_export := apex_data_export.export (
p_context => l_context,
p_format => apex_data_export.c_format_json,
p_file_name => 'test' );
apex_exec.close( l_context );
apex_data_export.download( p_export => l_export );
EXCEPTION
when others THEN
apex_exec.close( l_context );
raise;
APEX_JSON.free_output;
当我使用以下代码时:
l_context := apex_exec.open_query_context(
p_location => apex_exec.c_location_local_db,
p_sql_query => 'select OUTPUT from TFA_USER where SUB = ' || :P0_SUB);
我收到以下错误
ORA-00904: "TEST"."USER": invalid identifier
有什么方法可以只获取一行?