gpt4 book ai didi

java - 我无法从 plpgsql 函数中读取 java 返回的数组

转载 作者:行者123 更新时间:2023-11-29 12:20:19 25 4
gpt4 key购买 nike

Postgres plpgsql 函数:

CREATE OR REPLACE FUNCTION usersList()
RETURNS TABLE(at varchar,name varchar,surname varchar) AS $$
BEGIN
RETURN QUERY SELECT * FROM users;
END;
$$ LANGUAGE plpgsql;

和java代码

result = Pstatement.executeQuery("Select usersList() ");
while(result.next()) {
System.out.println(result.getString(("at")));
System.out.println(result.getString(("name")));
System.out.println(result.getString(("surname")));
}

Java错误sql异常信息:

Message: The column name at was not found in this ResultSet.
SQLState: 42703
ErrorCode: 0

如何从一个函数返回所有表列,然后在 java 中打印它们?

最佳答案

Postgres plpgsql 函数:

CREATE OR REPLACE FUNCTION usersList()
RETURNS TABLE(at varchar,name varchar,surname varchar) AS $$
BEGIN
RETURN QUERY SELECT * FROM users;
END;
$$ LANGUAGE plpgsql;

和java代码

result = Pstatement.executeQuery("SELECT * FROM usersList() ");
while(result.next()) {
System.out.println(result.getString(("at")));
System.out.println(result.getString(("name")));
System.out.println(result.getString(("surname")));
}

致谢 RealSkeptic && Nick Barnes !!!

关于java - 我无法从 plpgsql 函数中读取 java 返回的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29561150/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com