【发布时间】:2018-12-11 06:45:57
【问题描述】:
我正在尝试使用 psycopg2 将我的 python 代码中的 json 对象传递给 postgres 存储过程:
{
"experience": null,
"phoneNumber": [
"091184xxx"
],
"location": "tehran"
}
但出现此错误:
错误:格式错误的数组文字:“phoneNumbers”详细信息:数组值 必须以“{”或维度信息开头。
我该如何解决这个错误?
更新: 这是我的存储过程:
CREATE OR REPLACE FUNCTION data(job_req JSONB)
RETURNS VOID
AS $$
DECLARE
INSERT INTO "JobRequirements" (expertise,"phoneNumbers", "location")
VALUES (
job_req ->> 'expertise',
job_req ->> 'phoneNumbers' :: VARCHAR [],
job_req ->> 'location'
);
END;
$$ LANGUAGE 'plpgsql';
“phoneNumbers”列的类型是varchar(255) []
【问题讨论】:
-
向我们展示从过程中运行的插入查询以及要插入的表的定义。
-
我已将它们添加到问题中
-
I think you need to do sth. like this。如果是这样,是的,它很蹩脚......
标签: postgresql stored-procedures psycopg2