SQUIRREL:将 return 值从函数分配给变量
SQUIRREL: assigning return value from a function to a variable
我创建了一个 returns 和
的函数
text[]
正常工作
CREATE OR REPLACE FUNCTION another_function_array()
RETURNS text[] AS $$
SELECT array_agg(column_name::text)
FROM information_schema.columns
WHERE table_schema = 'abc' AND table_name = 'xyz'
$$
LANGUAGE SQL;
现在我想在另一个函数中使用该函数:
CREATE OR REPLACE FUNCTION get_array()
RETURNS VOID AS $$
DECLARE
arr text[] := another_function_array()
$$ LANGUAGE plpgsql;
它给了我输出
Error: ERROR: syntax error at end of input
Position: 107
SQLState: 42601
ErrorCode: 0
好的
;
在
结束时
arr text[] := another_function_array()
缺少是我的第一个猜测,但是当我添加它时我得到了错误
java.lang.ArrayIndexOutOfBoundsException
Error occurred in:
CREATE OR REPLACE FUNCTION get_array()
RETURNS VOID AS $$
DECLARE
arr text[] := another_function_array()
现在我有点困惑,因为我一定遗漏了一些基本的东西
作业的问题是,SQUIRREL 正在寻找分隔符
这是
;
可以找到解决该问题的方法
我创建了一个 returns 和
的函数text[]
正常工作
CREATE OR REPLACE FUNCTION another_function_array()
RETURNS text[] AS $$
SELECT array_agg(column_name::text)
FROM information_schema.columns
WHERE table_schema = 'abc' AND table_name = 'xyz'
$$
LANGUAGE SQL;
现在我想在另一个函数中使用该函数:
CREATE OR REPLACE FUNCTION get_array()
RETURNS VOID AS $$
DECLARE
arr text[] := another_function_array()
$$ LANGUAGE plpgsql;
它给了我输出
Error: ERROR: syntax error at end of input Position: 107 SQLState: 42601 ErrorCode: 0
好的
;
在
结束时arr text[] := another_function_array()
缺少是我的第一个猜测,但是当我添加它时我得到了错误
java.lang.ArrayIndexOutOfBoundsException Error occurred in: CREATE OR REPLACE FUNCTION get_array() RETURNS VOID AS $$ DECLARE arr text[] := another_function_array()
现在我有点困惑,因为我一定遗漏了一些基本的东西
作业的问题是,SQUIRREL 正在寻找分隔符 这是
;
可以找到解决该问题的方法