Postgres plpgsql function :
CREATE OR REPLACE FUNCTION usersList()
RETURNS TABLE(at varchar,name varchar,surname varchar) AS $$
BEGIN
RETURN QUERY SELECT * FROM users;
END;
$$ LANGUAGE plpgsql;
And java code
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 error sql exception message :
Message: The column name at was not found in this ResultSet.
SQLState: 42703
ErrorCode: 0
How can i return all table columns from a function and then print them in java ?
SELECT * FROM usersList().SELECT usersList()treatsusersList()as a field, and packs the output columns into a single value (of typerecord).SELECT * FROM usersList()treatsusersList()as a table, and gives you the result you're expecting.