3
请帮我解决这个错误。错误postgres光标
CREATE OR REPLACE FUNCTION MYCURSOR() RETURNS VARCHAR AS $$
declare
cur1 refcursor;
col_name varchar (10) ;
hstoredata hstore;
BEGIN
col_name = 'id';
OPEN cur1 FOR execute('select * from datas.tb where id =2');
loop
fetch cur1 into hstoredata;
if not found then
exit ;
end if;
Raise Notice '%',hstoredata -> col_name ;
end loop;
close cur1;
return 'r';
END;
$$ LANGUAGE plpgsql
当我尝试执行这个查询它显示我的错误作为
ERROR: Unexpected end of string CONTEXT: PL/pgSQL function "mycursor" line 15 at FETCH ********** Error ********** ERROR: Unexpected end of string SQL state: XX000 Context: PL/pgSQL function "mycursor" line 15 at FETCH
CREATE OR REPLACE FUNCTION MYCURSOR()返回VARCHAR AS $$ 声明 CUR1 REFCURSOR; var1 varchar(10); hstoredata hstore; r记录; alert_mesg VARCHAR(2000):=''; BEGIN var1 ='id'; OPEN cur1 FOR执行('select * from datas.tb where id = 2'); 循环 将cur1转换为r; 如果未找到,则退出 ; end if; \t将hstore(r)选入hstoredata; 提高通知'%',hstoredata - >'id'; end loop; close cur1; return alert_mesg; END; $$语言plpgsql – user2797756