【问题标题】:SQLLDR and .ctl filesSQLLDR 和 .ctl 文件
【发布时间】:2020-12-10 16:33:06
【问题描述】:
我有一个 ddl 脚本来创建一些表,但数据在 .ctl 文件中,我以前从未使用过它。我做了一些研究,但我不太了解如何使用 SQLLDR。这个怎么运作?我可以使用其他方式来执行 .ctl 文件吗?我只是在使用 PL/SQL 和 Oracle 10G
【问题讨论】:
标签:
oracle
plsql
oracle10g
sql-loader
ctl
【解决方案1】:
按照你的说法,它会是这样的:
-
使用 DDL 脚本,创建所有这些表
-
如果 CTL 文件包含数据,我认为它在 BEGINDATA 部分内。好吧,再好不过了,因为——只要你运行加载器,它就会知道在哪里找到要加载的数据(这也意味着控制文件使用infile *,对吧?)
-
您必须有权访问 SQL*Loader
- 如果你能连接到数据库服务器,它就在那里
- 如果您使用的是自己的 PC,请查看是否已安装
- 连同客户端软件
- 或者,您的 PC 上甚至可能有一个数据库(XE?)
-
一旦你拥有它(sqlldr.exe),请确保它的目录包含在 PATH 环境变量中,或者 - 如果没有 - 通过指定它的整个路径来调用它
-
打开操作系统的命令提示符
-
导航到包含CTL 文件的目录
-
运行加载器
sqlldr scott/tiger control=file1.ctl log=file1.log
如果一切正常,数据将被加载。检查日志文件!