0

在 PostgreSQL 过程中,QUERY类型变量varchar2保存一个查询字符串,该字符串被执行为

OPEN resultset FOR QUERY;

里面有QUERY一个对函数的调用string_to_array(mystring,'|')。如何'|'在查询字符串中转义?我努力了

QUERY := 'select string_to_array(mystring,''|'') from tablename where mycol=' ||fn_param|| '' ;

fn_param是该过程的字符变化类型输入。当我从 Java 调用上述过程时,它给出了错误ERROR: column "test" does not existtest我传递的值在哪里fn_param。该过程定义为

PROCEDURE myproc(fn_param character varying DEFAULT '0'::character varying, OUT resultset refcursor, OUT err character varying) IS
QUERY   VARCHAR2 (100);
BEGIN
    QUERY := 'select string_to_array(mystring,''|'') from tablename where mycol=' ||fn_param|| ' ';
    OPEN resultset FOR QUERY;
END;
4

0 回答 0