0

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

4

1 回答 1

1

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

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

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

  • 您必须有权访问 SQL*Loader

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

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

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

  • 将加载程序运行为

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

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

于 2020-12-10T17:30:36.257 回答