Sql server Oracle从函数插入

Sql server Oracle从函数插入,sql-server,oracle,function,insert,ora-00933,Sql Server,Oracle,Function,Insert,Ora 00933,我正在将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_r

我正在将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命令未正确结束”

有人知道这句话在Oracle中应该是什么样子吗


谢谢

如果函数返回流水线结果集,只需将函数放入表中,如下所示:

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)
      )

您的函数是如何定义的?