java - 如何使用 Oracle Forms 将 CSV 列值插入块和表中?
问题描述
我将 Oracle Database 11gR2 与 Oracle Forms and Reports 11gR2 一起使用。
我用“TEXTFIELD”创建了“浏览”按钮。按下按钮然后打开对话框并选择“csv”文件,“csv”路径文件将出现在“TEXTFILED”中。为此,我使用了“AWTFileDialog.jar”文件。
现在我希望将“CSV”列值显示到块中,并在按下“保存”按钮时将数据保存到表中。
我的表格:
如何实现这个目标?
谢谢
解决方案
我不知道如何使用表单来做到这一点。我也不确定我是否会使用 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
对其进行写入并将数据加载到目标表中很容易。
看看这些选项是否有帮助,或者等待别人的意见。
推荐阅读
- javascript - 在 Typescript 中解构赋值和“选择”时,类型上不存在属性
- android - 如何从片段中的属性引用中检索可绘制对象
- asp.net-core - 使用 Microsoft.AspNetCore.Rewrite 扩展在 ASP.NET Core 3 中重写静态文件的 URL
- java - 如何使用 Selenium Java 获取新打开的 IE 窗口的浏览器句柄
- angular - 已解决 - 当一个接一个地运行 2 个 observable 时 - 根据第一个得到结果
- flutter -
- javascript - TypeError:“设置getter-only属性vuejs axios
- sql - 在插入期间计算连续天数
- python - 使用多索引列进行计算
- mysql - 每周累计计数