`
ollevere
  • 浏览: 261272 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Oracle 同步表数据外键处理

阅读更多

ORA-02266: 表中的唯一/主键被启用的外键引用

 

方法一:

在删除有父子表关系的表的数据时,我们都知道要先删除子表 再 删除父表数据,或者先取消外键 然后再删除。

昨天采用先删子表 ,再删父表,删除时使用truncate,结果在删除父表的时候,给出了这个提示:“表中的唯一/主键被启用的外键引用”。

而改成delete则删除成功。

网上给出的解释是ddl与dml 的区别。这也是truncate与delete的又一个不同之处。

 

方法二:

alter table t_user disable primary key cascade;

truncate table t_user ;

alter table t_user  enable primary key;

insert into t_user  .....

 

commit;

 

 

--查询表的主键约束名

select * from user_constraints e where e.table_name=''; --处输入表名  

--查询所有引用到该主键的记录 

select b.table_name,b.column_name from user_constraints a   

inner join user_cons_columns b on a.constraint_name = b.constraint_name 

where a.r_constraint_name=''; --此处输入刚才查询出来的表主键的约束名 

 

 

方法三:

1、ORACLE数据库中的外键约束名都在表user_constraints中可以查到。其中constraint_type='R'表示是外键约束。

2、启用外键约束的命令为:alter table 表名  enable constraint  约束名

3、禁用外键约束的命令为:alter table 表名 disable constraint  约束名

4、然后再用SQL查出数据库中所有外键的约束名:

select 'alter table '||table_name||' enable constraint '||constraint_name||';' from user_constraints where constraint_type='R'

 

select 'alter table '||table_name||' disable constraint '||constraint_name||';' from user_constraints where constraint_type='R'

 

 

 

分享到:
评论

相关推荐

    Navicat Premium操作手册.7z

    入门9系统需求10注册10安装10维护或升级11最终用户许可协议12连接21常规设置22高级设置24SSL 设置28SSH 设置29HTTP 设置30服务器对象31MySQL 对象31MySQL 表31MySQL 表栏位31MySQL 表索引33MySQL 表外键34MySQL 表...

    transferdb:Transferdb支持异步数据库模式转换,全量数据导入,导入和增量数据同步功能(Oracle数据库-> MySQL数据库)

    FULL模式【全量数据导入导入】数据同步转换导入要求表中存在主键或唯一键,否则因异常错误退出或手工中断退出,断点续传【替换为】无法替换,数据可能会导致重复【除非手工清理下游重新导入】 ALL模式【全量导出...

    DataUML Design 数据建模工具

    关联关系与数据表中的外键相对应。关联关系也具有属 性。 2)、模型和数据库同步 数据模型与数据库绑定,设计模型之后可以一键把模型提交到绑定的数据库中,如果数据库中表存在,则会更新数据表结构,如果数据库中...

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

    在创建表时,经常会创建该表的主键、外键、唯一约束、Check约束等  语法结构 create table 表名( [字段名] [类型] [约束] ……….. CONSTRAINT fk_column FOREIGN KEY(column1,column2,…..column_n) ...

    DataUML Design 数据建模工具 1.5版本

    关联关系与数据表中的外键相对应。关联关系也具有属 性。 2)、模型和数据库同步 数据模型与数据库绑定,设计模型之后可以一键把模型提交到绑定的数据库中,如果数据库中表存在,则会更新数据表结构,如果数据库中...

    数据库设计和自动安装工具BDB V2.2(for Oracle/MS SQLServer/MySQL/Access/SQLAnywhere/Sybase)

    11、2007.11.28 Oracle、MySQL下导入数据增加禁用、重新启用外键约束处理。 12、2007.11.28 更正MySQL下处理导入日期类型字段数据问题。 13、2007.11.28 更正SQLServer下处理sql_variant、...

    表结构设计器(EZDML) V1.91

    1. 表结构设计:创建表、字段、主键、外键、索引和注释; 2. 表描述:可直接编辑文字描述快速生成表结构,爱用键盘的人会喜欢这个功能; 3. 模型图:自动生成模型图;可设计和显示物理/逻辑视图,支持自动布局、平...

    表结构设计器_小巧的数据库建模工具

    表结构设计:创建表、字段、主键、外键、索引和注释; b. 表描述:可直接编辑文字描述快速生成表结构,爱用键盘的人会喜欢这个功能; c. 模型图:自动生成模型图;可设计和显示物理/逻辑视图,支持自动布局、平移...

    表结构设计器(EZDML) V1.2

    1. 表结构设计:创建表、字段、主键、外键、索引和注释; 2. 表描述:可直接编辑文字描述快速生成表结构,爱用键盘的人会喜欢这个功能; 3. 模型图:自动生成模型图;可设计和显示物理/逻辑视图,支持自动布局、平...

    表结构设计器(EZDML) V1.3

    1. 表结构设计:创建表、字段、主键、外键、索引和注释; 2. 表描述:可直接编辑文字描述快速生成表结构,爱用键盘的人会喜欢这个功能; 3. 模型图:自动生成模型图;可设计和显示物理/逻辑视图,支持自动布局、平...

    表结构设计器(EZDML)1.41

    也可与现有数据库比较,然后生成同步脚本的功能,不至于丢失现有数据。 6. 生成代码:目前可生成C++、Pas、C#和Java的简单类定义代码。 新版本支持MYSQL数据库,解决无法导入MYSQL外键的问题。

    表结构设计器(EZDML)1.4

    1. 表结构设计:创建表、字段、主键、外键、索引和注释; 2. 表描述:可直接编辑文字描述快速生成表结构,爱用键盘的人会喜欢这个功能; 3. 模型图:自动生成模型图;可设计和显示物理/逻辑视图,支持自动布局、平...

    表结构设计器(EZDML)1.50

    1. 表结构设计:创建表、字段、主键、外键、索引和注释; 2. 表描述:可直接编辑文字描述快速生成表结构,爱用键盘的人会喜欢这个功能; 3. 模型图:自动生成模型图;可设计和显示物理/逻辑视图,支持自动布局、平...

    表结构设计器(EZDML)1.52

    1. 表结构设计:创建表、字段、主键、外键、索引和注释; 2. 表描述:可直接编辑文字描述快速生成表结构,爱用键盘的人会喜欢这个功能; 3. 模型图:自动生成模型图;可设计和显示物理/逻辑视图,支持自动布局、平...

    表结构设计器(EZDML)1.55

    1. 表结构设计:创建表、字段、主键、外键、索引和注释; 2. 表描述:可直接编辑文字描述快速生成表结构,爱用键盘的人会喜欢这个功能; 3. 模型图:自动生成模型图;可设计和显示物理/逻辑视图,支持自动布局、平...

    表结构设计器(EZDML)1.42

    1. 表结构设计:创建表、字段、主键、外键、索引和注释; 2. 表描述:可直接编辑文字描述快速生成表结构,爱用键盘的人会喜欢这个功能; 3. 模型图:自动生成模型图;可设计和显示物理/逻辑视图,支持自动布局、平...

    表结构设计器(EZDML)1.43

    1. 表结构设计:创建表、字段、主键、外键、索引和注释; 2. 表描述:可直接编辑文字描述快速生成表结构,爱用键盘的人会喜欢这个功能; 3. 模型图:自动生成模型图;可设计和显示物理/逻辑视图,支持自动布局、平...

    ezdml_setup_win64_v303.exe

    表结构设计器功能: 1. 表结构设计:创建表、字段、主键、外键、索引...也可与现有数据库比较,然后生成同步脚本的功能,不至于丢失现有数据。 6. 生成代码:目前可生成Pas、C#和Java的简单类定义代码。 EZDML v3.0.3

    实验六-触发器实验报告.doc

    在Account表上增加一个行级触发器,当对account的balance进行update和insert一个 记录时同步修改Customer的Savings字段,保证数据的一致性。 4. 对account进行update操作,记录account表和customer表的变化。 5. ...

    Navicat Premium 11.0.17简体中文注册版.rar

    可以在源数据库和目标数据库之间传输数据,也可在源数据库和目标数据库之间进行数据同步,同步数据结构,比较两个数据库之间的的表、主键、外键、索引、触发器及字符集、比对自动递增值及分割区,比对视图、函数、...

Global site tag (gtag.js) - Google Analytics