Oracle中错误代码ORA-02292 违反了完整性约束条件解决
百度处理:
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 违反了完整性约束条件解决的更多相关文章
- Linux下Oracle中SqlPlus时上下左右键乱码问题的解决办法
window下的sqlplus可以通过箭头键,来回看历史命令,用起来非常的方便. 但是在Linux下,会出现各种乱码,非常不方便,如下图所示,每次打错一个字符就需要重新打一遍. 解决办法:rlwrap ...
- Oracle中清除BIN$开头的垃圾表的解决办法
10g的新特性flashback闪回区 在10g中bin开头表示已经删除的放在回收站的表,oracle在删除表时并没有彻底的删除,而是把表放入回收站!purge recyclebin清空回收站即可. ...
- Oracle中清除BIN$开头的垃圾表的解决办法 [转]
oracle drop table的时候,不会彻底删除该表,它将drop的表放到了自己的回收站里,放到回收站的表就是我们看到的形如bin$/rt62vkdt5wmrjfcz28eja==$0的表,其中 ...
- oracle中的listener.ora和tnsnames.ora
一.oracle的客户端与服务器端 oracle在安装完成后服务器和客户端都需要进行网络配置才能实现网络连接. 服务器端配置监听器,客户端配置网络服务名. 服务器端可配置一个或多个监听程序 . ...
- oracle数据库出现“批处理中出现错误: ORA-00001: 违反唯一约束条件”解决方法
最近使用oraclede impdp工具全库导入数据库时,在数据库里面使用出现如下情况. SQL state : 违反唯一约束条件 (GDXAORCL.SYS_C0055359) ; nested e ...
- Oracle的tnsnames.ora配置(PLSQL Developer)
首先打开tnsnames.ora的存放目录,一般为D:\app\Administrator\product\11.2.0\client_1\network\admin,就看安装具体位置了. 步骤阅读 ...
- 如何用Excel直接查询Oracle中的数据
将Oracle中查询的数据保存为Excel文件,通常使用的是PL/SQL Developer. 其实,Excel可直接写SQL语句查询Oracle中数据,在这里,用到ODBC驱动.详细步骤如下: 一. ...
- 关于oracle中日期使用
spl> select * from emp where dates between to_date('2007-06-12 10:00:00' ...
- oracle中imp命令详解 .
转自http://www.cnblogs.com/songdavid/articles/2435439.html oracle中imp命令详解 Oracle的导入实用程序(Import utility ...
随机推荐
- linux入门教程(六) Linux文件与目录管理
在linux中什么是一个文件的路径呢,说白了就是这个文件存在的地方,例如在上一章提到的/root/.ssh/authorized_keys 这就是一个文件的路径.如果你告诉系统这个文件的路径,那么系统 ...
- [GCJ]Password Attacker
https://code.google.com/codejam/contest/4214486/dashboard#s=p0 排列组合.DP递推式,如下代码.dp[m][n]表示长度为n的字符串里有m ...
- MIT算法导论——第五讲.Linear Time Sort
本栏目(Algorithms)下MIT算法导论专题是个人对网易公开课MIT算法导论的学习心得与笔记.所有内容均来自MIT公开课Introduction to Algorithms中Charles E. ...
- SpringMVC,MyBatis商品的增删改查
一.需求 商品的增删改查 二.工程结构 三.代码 1.Mapper层 (1) ItemsMapperCustom.java package com.tony.ssm.mapper; import ja ...
- Linux 动画显示
Linux最强大的一个特征就是它有大量的各种小命令工具,这也可以称做是它最有趣的一个地方了.在这些大量的有用的命令和脚本中,你会发现有少部 分命令工具不那么有用的——如果你不愿意说是完全没用处的话.你 ...
- 让你了解x86的中断
COPY FROM:http://zhan.renren.com/qdlinux?gid=3602888498000980107&from=post&checked=true 研究li ...
- VS2012安装英文的语言包后,调试的时候提示Unknown error:0x80040d10
https://social.msdn.microsoft.com/Forums/en-US/e11a86ef-3be2-4256-92e9-d12809f2a6ca/error-0x80040d10 ...
- [HDOJ2473]Junk-Mail Filter(并查集,删除操作,马甲)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2473 给两个操作:M X Y:将X和Y看成一类. S X:将X单独划归成一类. 最后问的是有多少类. ...
- [HDOJ4738]Caocao's Bridges(双联通分量,割边,tarjan)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4738 给一张无向图,每一条边都有权值.找一条割边,使得删掉这条边双连通分量数量增加,求权值最小那条. ...
- Java Swing中Substance个人比较喜欢的两种组合
try { // 设置外形装饰为可装饰 JFrame.setDefaultLookAndFeelDecorated(true); // 设置外观 UIManager.setLookAndFeel(ne ...