ORA-00001: unique constraint (...) violated并不一定是数据冲突
来源:互联网 发布:java gbk utf8 转换 编辑:程序博客网 时间:2024/05/21 03:56
原文链接:http://blog.163.com/jet_it_life/blog/static/205097083201301410303931/
收到一位测试人员RAISE的JIRA,说在某张表上INSERT不了数据,报ORA-00001: unique constraint violated的错误,但是仔细核查了一下,并没有发现有重复的数据,让帮忙检查一下是什么问题。
仅仅看错误,应该是数据冲突引起的。但有一点比较奇怪的是错误中提示的违反的约束是一个索引,而这个索引并不是唯一索引!将这个索引DROP后,ORA-00001依然存在,但是这次换了一个索引!而这个索引依然不是唯一索引!再将这个索引DROP后再进行INSERT,问题的本质就暴露出来了:
ERROR at line 1:
ORA-00600: internal error code, arguments: [6002], [0], [227], [2], [0], [], [], []
600的错误,可能是表或表上的索引数据有坏块或者表或表的索引结构存在问题,尝试分析表及索引的结构:
SQL> ANALYZE TABLE #.# VALIDATE STRUCTURE CASCADE;
ANALYZE TABLE #.# VALIDATE STRUCTURE CASCADE
*
ERROR at line 1:
ORA-01499: table/index cross reference failure - see trace file
已经基本可以确定问题在表结构及其索引,尝试对表及相关索引进行重建:
SQL> alter TABLE #.# move;
Table altered.
SQL> alter index #.# REBUILD;
Index altered.
...
重建完表和索引后,终于正常INSERT了。
================================================================
关于ANALYZE的用法参考http://blog.sina.com.cn/s/blog_682841ba0101bncp.html
- ORA-00001: unique constraint (...) violated并不一定是数据冲突
- ORA-00001: unique constraint (...) violated并不一定是数据冲突
- ORA-00001: unique constraint (...) violated并不一定是数据冲突
- ORA-00001: unique constraint violated并不一定是主键冲突
- ORA-00001: unique constraint (.......) violated
- ORA-00001 unique constraint (string.string) violated
- ORA-00001: unique constraint (XINNET20100422.PK_T_THEME_ORDER) violated
- ORA-00001: unique constraint (...) violated解决方案
- ORA-00001: unique constraint (CONTRACT_MGR.PK_T_SUPPLIER) violated
- Statspack ORA-00001 unique constraint violated错误的解决
- ORA-00001 unique constraint violated错误的解决
- ORA-00001 unique constraint violated错误的解决 (
- impdp ORA-00001: unique constraint (SYS.I_JOB_JOB) violated
- java.sql.BatchUpdateException: ORA-00001: unique constraint (IEVSP.PK_C_CSERVICES) violated
- ORA-00001: unique constraint pk_****_key violated oracle imp 语句导入数据对oracle的数据字段操作顺序
- ORA-00001 : Unique Constraint Violated Caused by DATE VS Timestamp(6)
- ALTER SEQUENCE 修改序列解决唯一约束冲突 unique constraint violated
- 向ArcSDE导入数据出现(ORA-00001: Unique contraint (SDE.GDB_OC_PKC) violated错误
- Linux平台上SQLite数据库教程(二)——C语言API介绍
- POJ 2184Cow Exhibition(01背包变形)
- linux学习笔记1-虚拟机安装 UBUNTU u盘无法识别
- 【more effective c++读书笔记】【第3章】异常(2)
- Android RecyclerView 使用完全解析 体验艺术般的控件
- ORA-00001: unique constraint (...) violated并不一定是数据冲突
- Linux下创建用户命令
- 异步I/O之asyncore
- sizeof(struct)说明
- zabbix实现微信报警
- const遇到指针
- STL源码剖析 [容器](五)[stl_deque.h]
- nyoj-1216-整理图书-dp
- 用Gradle 构建你的android程序