将数据从 Web 托管的 CSV 加载到 Oracle 中?
Posted
技术标签:
【中文标题】将数据从 Web 托管的 CSV 加载到 Oracle 中?【英文标题】:Loading data from a web-hosted CSV into Oracle? 【发布时间】:2012-02-21 18:20:46 【问题描述】:我没有时间编写 perl 或类似的东西,也没有对后端的管理员访问权限,所以我如何从 Intranet (http://) 上的文件中获取数据并将其解析为创建一个表?也许以某种方式通过 PL/SQL?请记住,我没有太多的管理员权限。
【问题讨论】:
这是一次性加载吗?一个持续的过程?您是在尝试完全自动化它还是可以接受涉及人工干预的过程? 我希望它是自动化的。但据我了解,我可以使用 PL/SQL 调度程序来做到这一点。 与***.com/questions/6198863/…重复 @alfasin...不是重复...不同的问题。 【参考方案1】:如果您希望它完全自动化
您可以使用UTL_HTTP package 从 HTTP 服务器检索数据 您可以使用 INSTR 和 SUBSTR 自己解析 CSV 响应,也可以使用 UTL_FILE 包将数据写入数据库服务器文件系统上的文件,然后创建一个外部表来解析您刚刚创建的 CSV 文件。 然后您可以将解析后的数据插入到您已经创建的表中(我假设 CSV 数据每次都采用相同的格式)。 您可以使用DBMS_SCHEDULER
或DBMS_JOB
包来安排作业
您正在使用的 Oracle 数据库帐户需要被授予对所有这些包的访问权限。
【讨论】:
【参考方案2】:您可以将文件下载到您的主机中,然后使用 SQL*Loader 填充表。
如果您使用 PLSQLDeveloper(Tools->Text Importer) 或 SQLDeveloper(右键单击 Tables->Import Data) 等 IDE,则有一些向导可能比 SQL*Loader 更容易。
【讨论】:
【参考方案3】:创建一个引用您的 CSV 文件的外部表。这意味着您可以在 Oracle 中对文件运行 select 语句。
【讨论】:
以上是关于将数据从 Web 托管的 CSV 加载到 Oracle 中?的主要内容,如果未能解决你的问题,请参考以下文章
从 S3 将 CSV 数据加载到 Jupyter Notebook