1
我PostgreSQL中有一个存储过程,需要定义为t_document
复合类型如下:psycopg2 +存储过程+化合物类型
CREATE TYPE t_document AS (
title text,
metadata text,
data text
);
存储过程采用其他的参数,以及,与像签名:
CREATE or REPLACE FUNCTION sp_insertItem
(
name varchar(100) ,
phone varchar(100) ,
address varchar(150) ,
document t_document
)
调用从另一个存储过程该存储过程是这样的:
sp_insertItem('Name','Phone', 'Address', row('Title', 'Metadata', 'Data'));
我知道我可以使用cursor.callproc
来调用过程并给出所需的参数。但是,我不知道如何传递像t_document
这样的复合参数。那么如何从psycopg2调用一个预期复合类型的存储过程呢?