【发布时间】:2015-04-13 09:05:32
【问题描述】:
我有一个问题要解决,但我不知道该怎么做。
我正在使用 Oracle 10g 数据库导入五种类型的文件。此文件为 CSV 格式。 我知道在文件 1 中,字段名称位于第 1 位,在第 2 个文件中,我知道字段名称位于第 4 位……依此类推。基本上相同的字段在所有文件中,但在不同的位置。 我将文件导入数据库中的一个表(我们称之为 x_table),其中包含 ipl_c1、ipl_c2、ipl_c3 等字段......
我在每个文件的数据库表中的字段位置信息中得到了这个(我们称之为 x_param_table)。 现在我必须将这些数据迁移到不同的表中(每种文件类型一个表)。 我的问题是:我必须制定一个程序来处理每个文件?这可以动态进行吗?
我正在做的是,我根据这样的命运表创建一个类型:
i_table destiny_table%rowtype;
i_source_table x_table%rowtype;
接下来我迭代记录所在的表 (i_source_table),但每个文件的过程不同。
如果我在文件 1 中,那么我
i_table(i).name := i_source_table(idx).ipl_c1
如果我在文件 2 中,那么我
i_table(i).name := i_source_table(idx).ipl_c4
因为我得到了数据库(x_param_table)中字段的位置,所以不能做类似的事情
i_table(i).name := i_source_table(idx).ipl_c||x_param_table.position
也许我看错了……但我相信可以在一个过程中做到这一点。
有人可以帮忙吗?
【问题讨论】:
标签: oracle plsql oracle10g plsqldeveloper