将存储过程输出值作为oracle数据库中的列值之一插入

时间:2014-08-27 13:09:16

标签: sql oracle stored-procedures insert oracle-sqldeveloper

我需要使用自动创建的object_ID(应该从存储过程计算)将多行数据从excel插入到oracle数据库中。

我有一个名为-get_objectid的存储过程(diff输出取决于代码) 和其他细节是;;

table:sample(object_id,code,name) 值:object_id - >从存储过程中获取          代码和名字 - >来自excel数据

如何在这种情况下调用存储过程来插入object_id列?

请等待你的建议。 谢谢

1 个答案:

答案 0 :(得分:0)

我建议你将负载分成两个步骤。

创建一个临时表,其中仅包含excel文件中的数据。从excel加载数据而不对临时表进行任何修改。 它的优点是您可以在以这种方式实际插入数据之前查看数据。您可以确保excel数据按预期显示。

现在Oracle中有一个包含excel数据的表,以及一个包含“final”数据的表(目标表)。 使用以下方法从一个加载到另一个

INSERT INTO SAMPLE SELECT get_objectid(object_id), code, name from TMP_SELECT
祝你好运