0
复合类型数组是否是在plpgsql中模拟“函数作用域”表的正确方法?在plpgsql中选择一个复合类型数组
我想存储整个函数的访问查询结果,但我不想使用临时表,因为单个会话可能同时执行多个函数调用。
DECLARE
projectDocuments document_tracking.docmaster[];
SELECT * INTO projectDocuments FROM document_tracking.docmaster WHERE jobnumber = jobnumberparam;
产生格式错误的数组文字错误,我应该使用聚合函数,或:=?
'ON COMMIT DELETE ROWS' is not a option?.. –
您的意思是创建临时表并指定ON COMMIT DELETE ROWS。这是否意味着临时表被锁定在函数的事务中,并发执行的函数会在必要时自行锁定? –
它没有锁定。它在事务内部填充,并在提交时为空。你想如何在同一个会话中实现并发?..在一个池中共享语句级别?..在非 - 它会工作。如果是 - 取决于你在哪里做 - 如果在功能上 - 可能会工作。我甚至好奇地尝试:) –