【问题标题】:How to save the content of a XML file into a table (Oracle / PLSQL) without creating a directory如何在不创建目录的情况下将 XML 文件的内容保存到表(Oracle / PLSQL)中
【发布时间】:2016-03-17 15:14:01
【问题描述】:

是否可以将 XML 文件的内容保存在表中,而不使用“创建目录”之类的东西? (因为假设您可以访问 Oracle 服务器上的目录并且您的文件在服务器上,但事实并非如此。文件位于本地计算机上)

或者有人知道 Apex 是否提供了将 XML 上传到表中的功能吗?

【问题讨论】:

  • 文件在哪里?在服务器上还是在您的本地机器上?
  • 是的,本地的。这就是问题所在。
  • 如果是单个文件,能否不将文件内容复制到字符串变量中并将其用于 INSERT 语句?可能先转换成 XMLTYPE。
  • PL/SQL 在服务器上的数据库中运行。所以你不能使用 PL/SQL 来读取存储在客户端上的文件。您需要一个在客户端上运行的应用程序,该应用程序可以读取文件并连接到数据库。例如,您可以在客户端上使用SQL*Loader
  • 问题是,我必须“自动化”这个 ;-( 它是用于 Apex 应用程序的翻译目的。后来要翻译的女孩对这样的东西不太熟悉是的,这是个问题。否则(如果是对我来说)我会这样做。这是唯一阻止我完成申请的事情 ;-(

标签: xml oracle plsql oracle-apex


【解决方案1】:
  1. 您可以使用 SQL*Loader,并从脚本中更好地运行它
    可用性。
  2. APEX 能够在缓冲表中加载文件。 只需使用“文件浏览”项创建一个对话框页面。查看它的“存储类型”属性。默认情况下,此控件会将您的文件加载到 www_flow_files 表中。
  3. 您可以使用 xmltable 函数来解析 XML 数据并将其插入到表中。

【讨论】:

  • 好的,谢谢!我已经使用 3 来解析 XML 数据并将其插入到我的表中。我从表中获取 XML,但正如我所说,问题是......如何将 XML 放入表中;D 但也许 Apex 方法对我有用。那太好了 ;-) 我将您的答案标记为已接受。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-12-05
  • 2011-04-06
  • 1970-01-01
  • 2017-04-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多