首页 > 解决方案 > 如何使用 Oracle Forms 将 CSV 列值插入块和表中?

问题描述

我将 Oracle Database 11gR2 与 Oracle Forms and Reports 11gR2 一起使用。

我用“TEXTFIELD”创建了“浏览”按钮。按下按钮然后打开对话框并选择“csv”文件,“csv”路径文件将出现在“TEXTFILED”中。为此,我使用了“AWTFileDialog.jar”文件。

现在我希望将“CSV”列值显示到块中,并在按下“保存”按钮时将数据保存到表中。

我的表格:

在此处输入图像描述

如何实现这个目标?

谢谢

标签: javaoracleoracle11goracleformsoracle-fusion-middleware

解决方案


我不知道如何使用表单来做到这一点。我也不确定我是否会使用 Forms。

但是,我还有另外两个选择:

  • SQL*加载器
  • 外部表(在后台也使用 SQL*Loader)

第一个选项SQL*Loader要求您创建一个控制文件(请参阅此处的文档:https ://docs.oracle.com/cd/B28359_01/server.111/b28319/ldr_concepts.htm#g1013706 )。由于它是从命令提示符(在客户端计算机上)调用的,因此您可以使用 HOST(如果您使用的是 Forms 6i)或 CLIENT_HOST (Webutil),如果您使用的是更高版本来调用包含 SQLLDR 的批处理脚本。 EXE调用。

另一个选项external table在数据库服务器上工作,因为您必须有权访问目录(Oracle 对象)(即授予其读/写权限)。由于外部表代表输入 (CSV) 文件,就好像它是“普通”Oracle 表一样,您可以SELECT对其进行写入并将数据加载到目标表中很容易。

看看这些选项是否有帮助,或者等待别人的意见。


推荐阅读