首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当表具有自引用外键时,Oracle sqlldr

问当表具有自引用外键时,Oracle sqlldr
EN

Stack Overflow用户
提问于 2015-10-18 06:25:23
回答 1查看 366关注 0票数 0

我正在尝试创建一个简单的数据库,其中一个表具有引用该表中另一列的外键。

在添加此约束之前,我已经能够使用SQL*Loader (使用csv)正确地加载数据,但是一旦添加它,我就无法使用SQL*Loader加载数据(所有行都会被拒绝)。

有什么方法可以解决这个问题吗?我已经在网上搜索了几个小时,但我没有找到任何非常具体的东西。我已经找到了直接路径加载的示例,但我不想假设直接路径加载是在这个oracle实例上设置的(我使用的加载是常规的)。是否有一组步骤可以成功加载此数据,或者是否有一个参数可以设置为强制加载数据?

EN

回答 1

Stack Overflow用户

发布于 2015-10-18 11:31:12

这可能是该问题的快速解决方法。编写Unix/Bat脚本以执行以下功能:

  1. 假设column1是主键字段,column2是自引用外键字段。
  2. 将数据加载到没有自引用约束的临时表中。
  3. 现在从临时表插入到表中,但只应插入不同的column1值。在此语句中,Column2应填充为null。
  4. 使用自引用column2更新表的所有插入记录。由于所有不同的值都已输入,因此不会导致自引用键错误。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33192234

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档