Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Postgres错误:列定义列表仅允许用于返回“0”的函数;“记录”;_Java_Sql_Postgresql_Plpgsql - Fatal编程技术网

Java Postgres错误:列定义列表仅允许用于返回“0”的函数;“记录”;

Java Postgres错误:列定义列表仅允许用于返回“0”的函数;“记录”;,java,sql,postgresql,plpgsql,Java,Sql,Postgresql,Plpgsql,您的错误如下: CREATE OR REPLACE FUNCTION multiple_mineral_report(b integer) RETURNS character varying AS $BODY$ declare k varchar := ''; sql_res record; begin for sql_res in execute 'select mineral_name from application_mineral as am inner join

您的错误如下:

    CREATE OR REPLACE FUNCTION multiple_mineral_report(b integer)
  RETURNS character varying AS
$BODY$
declare
k varchar := '';    
sql_res record;
begin
 for sql_res in execute 'select  mineral_name from application_mineral as am inner join mineral as m on(am.mineral=m.mineral_id) where am.application_id = '||$1||'' loop
    k = k || sql_res.mineral_name || ', ';
 end loop;
 return k;
end;
$BODY$
  LANGUAGE plpgsql VOLATILE
  COST 100;
ALTER FUNCTION multiple_mineral_report(integer) OWNER TO postgres;
删除粗体部分,此特定错误将消失。
但实际上,由于函数只返回一个值,因此您希望按如下方式调用函数:

RETURNS character varying

S应添加更多信息:从您使用的语言开始。好的,我已根据您的要求进行了编辑。请向我们展示
多个矿产报告的
创建函数
语句
谢谢您的建议,这对我很有帮助
PreparedStatement query =getCon().prepareStatement(
"select * from  multiple_mineral_report(?) as types(val1 varchar)"
,ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
RETURNS character varying
SELECT multiple_mineral_report(?)