java - 如何使用 Oracle Forms 将 CSV 列值插入 block 和表中?

标签 java oracle oracle11g oracleforms oracle-fusion-middleware

我将 Oracle Database 11gR2 与 Oracle Forms and Reports 11gR2 结合使用。

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

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

我的表格:

enter image description here

如何实现这个目标?

谢谢

最佳答案

我不知道如何使用表单来做到这一点。我也不确定是否会使用表单来完成此操作。

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

  • 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 调用的批处理脚本。

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

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

关于java - 如何使用 Oracle Forms 将 CSV 列值插入 block 和表中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55391978/

相关文章:

java - ResultSet.next() 抛出 SQLException : Result Set Closed

java - 调用了 BaseAdapter notifyDatasetChanged() 但从未调用过 getView()

sql - 聚类因子和唯一键

java - SQL 中的名称按字母顺序排列

java - 如何在java中使用Indexof()方法

Java 转换器 setOutputProperty()

sql - 选择表中没有行的列的最大值

oracle - 我如何才能等到所有调度程序作业完成?

oracle - 调用HTTP页面时如何给出用户名和密码?

oracle - 如何在数据类型为 xmltype 的列上使用 ora_hash