报错如下: ### Error updating database. Cause: java.sql.SQLIntegrityConstraintViolationException: ORA-02290: check constraint (SKUSER.SYS_C0013649) violated ### The error may involve gov.chinatax.ctims.dao.mapper.CbFpJsMapper.insert-Inline### The error oc…
最近碰到一个十分棘手的问题,Java程序插入空数据到oracle时报ORA-02290: 违反检查约束条件(XXXX.×××××),这明显是在设置不可为空的字段上插入为空内容导致,但是检查数据库表后发现,字段设置为可为空,又查看了建表语句发现该字段依然是可以为空,同时有一个奇怪的现象,报错信息中的×××××在数据库表中查询不到信息. 针对这一莫名问题的报错,我开始查看程序中关于数据库插入处是否存在字段非空约束的内容,结果并未发现任何约束信息. 我使用SQL语句直接在数据库中插入空数据,报错信息为…
场景: 使用plsql/developer 将原本要求非空的字段   改为可以为空 然后在插入数据的时候 报错改字段约束条件还起作用 解决方案: 首先查询该表的约束条件 select * from user_constraints where table_name='TABLENAME',(这里要注意TABELNAME必须是大写) 发现该字段的约束条件还存在 删除该约束条件: ALTER TABLE TABLENAME DROP CONSTRAINT SYS_C0049484.[注:这里不需要使…
在向oracle保存数据时,控制台报错如下: 很明显是保存时,该表的设计不允许某个字段非空导致的,但由于该表的数量较多,采用断点的方式有太过麻烦, 这里笔者采用 oracle 的客户端连接工具oracle sql developer,成功连接后,如下图所示: 找到对应的字段即可解决问题…
oracle违反完整约束条件 Oracle ORA-02292: 违反完整约束条件 (UNITELE.TA_SUB_REFERENCE3) - 已找到子记录 A表被B表引用,删除A表的时候提示ORA-02292,A表的主键被引用了,虽然已经把B表的数据全部删除掉,但仍然删除不了A表的数据. 解决办法: 用禁用约束语句把A表的主键约束给禁用掉. 1.禁用约束:alter table 表名 disable constraint 主键 CASCADE 2.删除A表的数据 3.启用约束:alter ta…
我是处于工作中没用过oracle的状态,这不,记录下这个小小的问题.哈哈. 表是公司的平台组定义的.前几天为了测试程序,想删掉一些记录,然后使用delete语句,出现这个东东:oracle ORA-02292: 违反完整约束条件 (TEST.FK_H3K23R74VBBA62WXJB512P0PB) - 已找到子记录出现原因是这个表的某个column被当成了别的表的外键,真的是尴尬,说实话,工作以来,没遇到有公司用外键来维护表关系的. 先使用sql语句查出到底是哪一个表“约束”了"FK_H3K2…
最近使用oraclede impdp工具全库导入数据库时,在数据库里面使用出现如下情况. SQL state : 违反唯一约束条件 (GDXAORCL.SYS_C0055359) ; nested exception : 违反唯一约束条件 (GDXAORCL.SYS_C0055359) )…
首先打开tnsnames.ora的存放目录,一般为D:\app\Administrator\product\11.2.0\client_1\network\admin,就看安装具体位置了. 步骤阅读 2 使用editplus或者记事本或其他工具打开tnsnames.ora,进行编辑 配置一下文件 CONN_shenyi2 = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 172.17.144.191)(PORT = 1521)) (CONNE…
源地址:https://www.cnblogs.com/qq3245792286/p/6212617.html. 首先打开tnsnames.ora的存放目录,一般为D:\app\Administrator\product\11.2.0\client_1\network\admin,就看安装具体位置了. 步骤阅读 2 使用editplus或者记事本或其他工具打开tnsnames.ora,进行编辑 配置一下文件 CONN_shenyi2 = (DESCRIPTION = (ADDRESS = (PR…
由于大意,在设置数据库表时将外键字段的类型与外键表的主键字段类型不一致,造成此错误. 我的情况是: 1.将一个为number(10)的外键设置成了number(19) 2.将外键字段对应的主键表设置成了另外的一张表(大意) 关于oracle出现ORA-02291: 违反完整约束条件 - 未找到父项关键字错误的几种情况.转载至:ORA-02291: 违反完整约束条件 - 未找到父项关键字 以下是信息留存: 总体说说可能出现的原因: 情况场景: 表A中有个字段是外键,关联了表B中的某字段,再往表A插…
ORA-00001: unique constraint (string.string) violated   ORA-00001: 违反唯一约束条件(.) Cause: An UPDATE or INSERT statement attempted to insert a duplicate key. For Trusted Oracle configured in DBMS MAC mode, you may see this message if a duplicate entry exi…
ORACLE配置tnsnames.ora文件实例客户机为了和服务器连接,必须先和服务器上的监听进程联络.ORACLE通过tnsnames.ora文件中的连接描述符来说明连接信息.一般tnsnames.ora 是建立在客户机上的.如果是客户机/服务器结构,整个网络上只有一台机器安装了ORACLE数据库服务器,那么只需在每个要访问ORACLE服务器的客户机上定义该文件,在服务器上无需定义.但是,如果网络上有多台机器均安装了ORACLE数据库服务器,并且服务器之间有数据共享的要求,那么在每台服务器上都…
在sql语句执行时是先执行触发器再检查约束条件的…
Oracle 使用sqlnet.ora/trigger限制/允许某IP或IP段访问指定用户 学习了:http://blog.itpub.net/28602568/viewspace-2092858/ 注释: 接触MySQL的朋友想必都知道mysql可针对指定IP/IP段来限制用户的访问,在Oracle数据库中默认有账号密码访问主机的权限的IP都可登陆该DB用户: 那么,Oracle 如何实现针对DB.单个用户来限制/允许IP访问呢? 1.整个DB层:可设置$ORACLE_HOME/network…
ORA-02291: 违反完整约束条件 - 未找到父项关键字问题解决 总体说说可能出现的原因: 情况场景: 表A中有个字段是外键,关联了表B中的某字段,再往表A插入数据时,会出现这种情况. 可能原因: 1. 插入的数据 如果某个字段是外键 那么该值要么为空 要么在主键表中 有对应的主键值 否则 就不满足参照完整性约束 所以你肯定插入了 不存在的主键值 所以产生了这个错误 eg.创建A表 创建B表 向A表插入数据 向B表插入数据 向B 表中插入数据,B表中某个字段(外键)在A表(主表)中没有值:2…
Oracle 使用sqlnet.ora/trigger限制/允许某IP或IP段访问指定用户 原创 Oracle 作者:maohaiqing0304 时间:2016-05-03 17:05:46  17297  0   链接:http://blog.itpub.net/28602568/viewspace-2092858/ 标题:Oracle 使用sqlnet.ora/trigger限制/允许某IP或IP段访问指定用户 作者:lōττéry©版权所有[文章允许转载,但必须以链接方式注明源地址,否则…
分析原因: 在oracle中,主健不能自动生成,不过可以通过“序列”来实现,如果是这样的话,问题很可能就出在“序列”上了: ORACLE表主键ID突然从已经存在的ID值开始自动生成,导致违反主键唯一性约束: 先上个触发器: TRIGGER LESEIL."RIGHT" BEFORE INSERT ON LESEIL."RIGHT" FOR EACH ROW DECLARE last_Sequence NUMBER; last_InsertID NUMBER; BEG…
--获取约束信息 select * from information_schema.constraint_column_usage---可以获取指定数据库中的所有约束的信息以及约束与列的对应关系 go   select * from information_schema.constraint_table_usage---查询结果中只包含表和约束的对应关系,并没有约束对应的列信息 go   select * from information_schema.table_constraints---查…
报错的原因很清楚,就是你要删除的记录是另外某条记录的外键,解决办法: 1.删除子记录,在删除本记录: 2.暂时禁用此外键(适合在测试后清除所有记录的情况,记得最后要恢复此外键) 解决办法有了,现在最主要的矛盾是找到外键,怎么根据外键名称找到外键呢?代码如下: select a.constraint_name, a.table_name, b.constraint_name from user_constraints a, user_constraints b where a.constraint…
1.找到以”FKXXX“为外键的表A的子表,直接运行select a.constraint_name, a.table_name, b.constraint_name from user_constraints a, user_constraints bwhere a.constraint_type = 'R' and b.constraint_type = 'P' and a.r_constraint_name = b.constraint_nameand a.constraint_name…
按照正常操作流程,启动项目,发现项目报错,原因是连接不上oracle数据库, PLSQL连接时报错,错误码  ORA:12154 无法解析指定的连接标识符 第一次,遇到这个错误,在网上找了资料都是需要修改 监听(D:\oracle\product\11.2.0\dbhome_1\NETWORK\ADMIN\listener.ora)和服务(D:\oracle\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora)文件. 基于前一天正常使用,第二天莫…
总结: 1 .三个配置文件都是放在$ORACLE_HOME\network\admin目录下. 2 .sqlnet.ora确定解析方式 3 .listener.ora上设SID_NAME,通常用于JDBC访问,对应的错误码为12505 4 .tnsnames.ora上设SERVICE_NAME,通常用于linux sqlplus客户端,对应的错误码为12514 sqlnet.ora 作用类似于linux或者其他unix的 nsswitch.conf文件,通过这个文件来决定怎么样找一个连接中出现的…
unix:$ORACLE_HOME/dbsnt:c:\Oracle\ora81\database create spfile from pfile = '/home/oracle/initora11g.ora'; !echo '*.memory_target=1024m' >>'/home/oracle/initora11g.ora'; startup pfile=/home/oracle/initora11g.ora;…
先看有没有sqlnet.ora [oracle@localhost ~]$ cd $ORACLE_HOME[oracle@localhost dbhome_1]$ cd network[oracle@localhost network]$ cd admin[oracle@localhost admin]$ lslistener.ora  samples  shrept.lst[oracle@localhost admin]$ 手动创建一个sqlnet.ora文件 [oracle@localhos…
学习:http://www.cnblogs.com/william-lee/archive/2010/10/20/1856261.html 之前因为安装的是windows server 2008 r2的系统,oracle是11g r2 64bit,因为像很多网友一样,无法使用pl/sql developer 8连接oracle,今天可算连上了,对listener.ora sqlnet.ora tnsnames.ora三个文件.TNSListener服务的认识也深了一层. 先说说我是怎么样连接上的…
oracle网络配置三个配置文件 listener.ora.sqlnet.ora.tnsnames.ora ,都是放在$ORACLE_HOME/network/admin目录下.1. sqlnet.ora-----作用类似于linux或者其他unix的nsswitch.conf文件,通过这个文件来决定怎么样找一个连接中出现的连接字符串.例如我们客户端输入sqlplus sys/oracle@orcl假如我的sqlnet.ora是下面这个样子SQLNET.AUTHENTICATION_SERVIC…
昨天晚上快下班的时候,公司数据库突然堵住了,一个buf表中累计了20多W的数据提取不出来,改了程序,效果不明显.因为之前有一次也重启过oracle,所以这次还是想把oracle重启一下,因为那些数据都是客户要发送出去的东西,比较急,所以,经理就去机房把oracle重启了.他怎么重启的我也不知道,我只知道,重启之后,oracle起不来了..那个电话啊..那个催促啊.. >cmd >sqlplus sys/**** as sysdba SQL>startup ORA-00093:_share…
x:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN listener.ora: # listener.ora Network Configuration File: d:\app\Administrator\product\\dbhome_1\network\admin\listener.ora # Generated by Oracle configuration tools. SID_LIST_LISTENER = (SID_…
使用oracle数据库出现名称已被一现有约束条件占用的错误,我的原因是在同一个库中有一个表使用了外键FK_SNO,自己新建的一个表中也使用了外键FK_SNO,导致出现了错误. 这时改变一下外键FK_SNO的名称就可以了.…
db_name = "orcl"   一个数据库标识符,应与CREATE DATABASE 语句中指定的名称相对应. instance_name = orcl在多个例程使用相同服务名的情况下,用来唯一地标识一个数据库例程. INSTANCE_NAME 不应与 SID 混淆,它实际上是对在一台主机上共享内存的各个例程的唯一标识. service_names =  orcl为 Net8 监听程序可用于识别一个服务 (如:复制环境中的一个特定数据库) 的例程指定服务名.如果该服务没有域,将附…