功能中的oracle插入物
-
29-09-2019 - |
题
我将SQL Server存储的过程转换为Oracle。在SQL Server中,您可以从函数调用中插入表中。
这是SQL Server:
INSERT INTO t_tmpl( rel_class_code, rel_side, template_id, template_name, template_desc )
SELECT rel_class_code, ls_rel_side, obj_id, name, description
FROM etmf_get_templates_for_rel( ps_rel_class_code, ls_rel_side, pi_called_by )
我将其转换为Oracle时收到的错误消息是“ PL/SQL:ORA-00933:SQL命令未正确结束”。
有谁知道甲骨文中的这种说法应该是什么样的?
谢谢!!!
解决方案
如果您的功能返回管道的结果集,则只需将功能放入表中,如下所示:
INSERT INTO t_tmpl
(rel_class_code, rel_side, template_id, template_name, template_desc)
SELECT rel_class_code, ls_rel_side, obj_id, name, description
FROM TABLE(
etmf_get_templates_for_rel(ps_rel_class_code, ls_rel_side, pi_called_by)
)
不隶属于 StackOverflow