百度处理:

A表被B表引用,删除A表的时候提示ORA-02292,A表的主键被引用了,虽然已经把B表的数据全部删除掉,但仍然删除不了A表的数据。
解决办法:
 用禁用约束语句把A表的主键约束给禁用掉。
1、禁用约束:alter table 表名 disable constraint 主键   CASCADE
 2、删除A表的数据
 3、启用约束:alter table 表名 enable constraint 主键
OK,大功告成。注意,禁用的时候一定要加 CASCADE。

我的处理方法(也是参照上面的):

我的问题是,A,B是同一张表,但是删除不了记录。 PL/SQL执行代码:delete from LDMenu where NodeCode='1923',就会报ORA-02292.

我在这里,表明上面问题注意点:

1.首先查看LDMenu表的主键是啥,在PL/SQL中右键表明View.选择keys,会有一行记录,有Name,,Type,Columns等字段。这里注意Name是约束名,Columns是表的字段名。

2.我的sql如下,基本是按照百度上面说的做的。一定要注意constraint 后面的字段是约束名,而不是表的字段名。

alter table ldmenu disable constraint PK_LDMENU CASCADE

delete from LDMenu where NodeCode='1923'

alter table ldmenu enable constraint PK_LDMENU

3.百度上面说的注意,的确也要注意。处理完后也要将之前的禁用启动。删除的时候也要提交,这是pl/sql的知识,至此问题解决完毕。

近日开发收获:其实开发工具还是Oracle报的错,一般都搬的很对。报你主键被引用就是被引用,Java报你控制针就是有空指针。先回顾昨天开发中出现的问题,我SIT更新完jsp后,一直报一个name变量无法编译或者没有定义之类的错误,我在SIT上查看,我已经都修改过了,为什么还是报错,以为是WebSpere没有生效(有时候的确有这个情况发生)。重启WebSpere还是不生效,然后我就想是不是jsp到class文件没有编译,我又到服务器上删除jsp编译后的class文件。最后重启还是报name变量未定义同样错误。这个时候,我仔细检查修改后的jsp页面。结果是一个System.out...语句写成name.out...。显然这里的name变量不对,无法调方法。改后,SIT生效。

Oracle中错误代码ORA-02292 违反了完整性约束条件解决的更多相关文章

  1. Linux下Oracle中SqlPlus时上下左右键乱码问题的解决办法

    window下的sqlplus可以通过箭头键,来回看历史命令,用起来非常的方便. 但是在Linux下,会出现各种乱码,非常不方便,如下图所示,每次打错一个字符就需要重新打一遍. 解决办法:rlwrap ...

  2. Oracle中清除BIN$开头的垃圾表的解决办法

    10g的新特性flashback闪回区 在10g中bin开头表示已经删除的放在回收站的表,oracle在删除表时并没有彻底的删除,而是把表放入回收站!purge recyclebin清空回收站即可. ...

  3. Oracle中清除BIN$开头的垃圾表的解决办法 [转]

    oracle drop table的时候,不会彻底删除该表,它将drop的表放到了自己的回收站里,放到回收站的表就是我们看到的形如bin$/rt62vkdt5wmrjfcz28eja==$0的表,其中 ...

  4. oracle中的listener.ora和tnsnames.ora

    一.oracle的客户端与服务器端 oracle在安装完成后服务器和客户端都需要进行网络配置才能实现网络连接.    服务器端配置监听器,客户端配置网络服务名. 服务器端可配置一个或多个监听程序 . ...

  5. oracle数据库出现“批处理中出现错误: ORA-00001: 违反唯一约束条件”解决方法

    最近使用oraclede impdp工具全库导入数据库时,在数据库里面使用出现如下情况. SQL state : 违反唯一约束条件 (GDXAORCL.SYS_C0055359) ; nested e ...

  6. Oracle的tnsnames.ora配置(PLSQL Developer)

    首先打开tnsnames.ora的存放目录,一般为D:\app\Administrator\product\11.2.0\client_1\network\admin,就看安装具体位置了. 步骤阅读 ...

  7. 如何用Excel直接查询Oracle中的数据

    将Oracle中查询的数据保存为Excel文件,通常使用的是PL/SQL Developer. 其实,Excel可直接写SQL语句查询Oracle中数据,在这里,用到ODBC驱动.详细步骤如下: 一. ...

  8. 关于oracle中日期使用

    spl> select * from emp         where dates          between         to_date('2007-06-12 10:00:00' ...

  9. oracle中imp命令详解 .

    转自http://www.cnblogs.com/songdavid/articles/2435439.html oracle中imp命令详解 Oracle的导入实用程序(Import utility ...

随机推荐

  1. lintcode : 二叉树的最小深度

    题目: 二叉树的最小深度 给定一个二叉树,找出其最小深度. 二叉树的最小深度为根节点到最近叶子节点的距离. 样例 给出一棵如下的二叉树: 1 /     \ 2       3 /    \ 4    ...

  2. GC垃圾回收之GC.KeepAlive方法

    http://msdn.microsoft.com/zh-cn/library/system.gc.keepalive.aspx http://www.cnblogs.com/ren700622/ar ...

  3. 在VS2012后的版本中做数据报表时,提示尚未指定报表“Report1”的报表定义

    有一群的朋友在用VS2012做数据报表时,老是提示 本地报表处理期间出错. 尚未指定报表“Report1”的报表定义 未将对象引用设置到对象的实例. 我看了一下,步骤没错,我用VS2010做了一下,一 ...

  4. C# 常用对象的的修饰符

    class(类) 1.internal 表示类只能在当然程序集中访问,类默认修饰符 2.public 表示所有地方都可以访问,与internal是互斥的 3.abstract 抽象类,不能被实例化,只 ...

  5. 简单说说PHP优化那些事

    我们在编写程序时,总是想要使自己的程序占用资源最小,运行速度更快,代码量更少.往往我们在追求这些的同时却失去了很多东西.下面我想讲讲我对PHP优化的理解.优化的目的是花最少的代价换来最快的运行速度与最 ...

  6. DataGridView控件的使用---添加行

    最简单的方法 可以静态绑定数据源,这样就自动为DataGridView控件添加相应的行. 假如需要动态为DataGridView控件添加新行,方法有很多种,下面简单介绍如何为DataGridView控 ...

  7. HDU 3949 XOR(高斯消元)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3949 题意:给出一个长度为n的数列A.选出A的所有子集(除空集外)进行抑或得到2^n-1个数字,去重排 ...

  8. 1002: A+B for Input-Output Practice (II)

    问题描述: http://acm.wust.edu.cn/problem.php?id=1002&soj=0 代码实现: import java.util.Scanner; public cl ...

  9. fiddler for mac

    Fiddler 是一免费的web调试工具.并且兼容所有浏览器.系统和平台. Fiddler 是基于微软的 .Net 技术开发的,没办法直接在 Mac/Linux 下使用.本文介绍一些替代方案(这些方案 ...

  10. 函数buf_page_create

    /********************************************************************//** Initializes a page to the ...