SQLLDR 和 .ctl 文件

SQLLDR and .ctl files

我有一个 ddl 脚本来创建一些表,但数据在 .ctl 文件中,我以前从未使用过它。我做了一些研究,但不太了解如何使用 SQLLDR。怎么运行的?我可以使用其他方式来执行 .ctl 文件吗?我正在使用 PL/SQL 和 Oracle 10G

按照你的说法,它会是这样的:

  • 使用 DDL 脚本,创建所有这些表

  • 如果 CTL 文件包含数据,我认为它在 BEGINDATA 部分中。很好,再好不过了,因为 - 一旦你 运行 加载程序,它就会知道在哪里可以找到要加载的数据(这也意味着控制文件使用 infile *,对吧?)

  • 您必须有权访问 SQL*Loader

    • 如果你可以连接到数据库服务器,它就在那里
    • 如果您使用的是自己的 PC,请查看是否已安装
      • 连同客户端软件
      • 或者,您的 PC 上什至可能有一个数据库(XE?)
  • 一旦你拥有它(sqlldr.exe),确保它的目录包含在 PATH 环境变量中,或者 - 如果没有 - 通过指定整个路径

  • 打开操作系统的命令提示符

  • 导航到包含 CTL 个文件的目录

  • 运行 加载程序为

    sqlldr scott/tiger control=file1.ctl log=file1.log
    

如果一切正常,将加载数据。检查日志文件!