一个很急的问题(java.sql.SQLException: ORA-00001: 违反唯一约束条件)

singnet 2004-07-12 02:35:37
我将oracle数据库从HP UNIX导出到window 2000下面后,插入数据时后台老是提示" java.sql.SQLException: ORA-00001: 违反唯一约束条件",但是数据可以提交成功,不过当我通过WEB方式修改刚刚提交的数据时,显示的完全是别的数据。该怎么解决啊?(以前在UNIX下是没有问题的,程序也没有问题,因为用了10几年了),恳请高手回答 ,分不够可以再加!!!!!!!

服务器用的是weblogic,程序是JSP
...全文
2034 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
singnet 2004-07-12
  • 打赏
  • 举报
回复
显示如下
select oper_recno.nextval from dual
*
ERROR 位于第 1 行:
ORA-02289: 序列(号)不存在
LGQDUCKY 2004-07-12
  • 打赏
  • 举报
回复
看下你的oper_recno.nextval的值是否在数据库已经存在如果已经存在
就修改序列的下个值

select oper_recno.nextval from dual;

select count(*) from operater_record where id = ..
singnet 2004-07-12
  • 打赏
  • 举报
回复

这是添加数据时,后台报的错误
Insert into contentpage_record(Page_no,Block_id,Key_word,Page_author,Page_genera
te_time,Page_file_name,Model_file_name,Block_other_id,Block_hotmark,page_relatio
n) values(668249,6176,?,2953,sysdate,'2004071200121.html','news_xmb_02.tmpl','#'
,?,'')
update block_base_info set block_have_new=1 where block_id = 6176
Insert into operater_record values(oper_recno.nextval,2953,1001,6176,'/website/h
tdocs/hahaha/test/block/html/2004071200121.html',sysdate)
theFilenameString
java.sql.SQLException: ORA-00001: 违反唯一约束条件 (CMS.PK_CP_RECORD_REG_NO)
theFilenameString
java.sql.SQLException: ORA-00001: 违反唯一约束条件 (CMS.PK_CP_RECORD_REG_NO)
java.sql.SQLException: ORA-00001: 违反唯一约束条件 (CMS.PK_CP_RECORD_REG_NO)
select page_no from contentpage_record where page_reject = 1 and page_delete = 0
and rownum <= 1 and page_author = 2953
Database commit successful!
qiaozhiwei 2004-07-12
  • 打赏
  • 举报
回复
看你出错的语句,我是这样认为的:
对于java.sql.SQLException: ORA-00001: 违反唯一约束条件 (CMS.PK_CP_RECORD_REG_NO)
可能是该表的主键唯一性出错,即:主键中已有某个键值,又插入一个同样的值,这个可以察看相应的表的主键约束.
对于java.sql.SQLException: ORA-01401: 插入的值对于列过大,可能是某个字段在表中定义数据长度小于要插入的数据的长度,例如,定义A字段VARCHAR2 [40],但插入的数据长度却是140,可以在插入之前统一将数据截取到符合要求的长度,或者找到相应字段,修改数据长度.

lemonhat 2004-07-12
  • 打赏
  • 举报
回复
牛也不用这样吹,java,weblogic生下来才没几年,你那程序有十多岁了?三思而后语
lemonhat 2004-07-12
  • 打赏
  • 举报
回复
在出错时捕捉到这个sql语句,并将其打印到后台或页面上进行调试.很可能数据导入时出现意外.或者目标数据库连接有误.先将其改为连接至HP的数据库下,看看有没问题.
zwj0712 2004-07-12
  • 打赏
  • 举报
回复
CMS.PK_CP_RECORD_REG_NO是唯一的主键不能有重复值!
zwj0712 2004-07-12
  • 打赏
  • 举报
回复
插入的值对于列过大是因为你的字段类型大小不够!!
singnet 2004-07-12
  • 打赏
  • 举报
回复
刚刚测试一下,又多出这个错误
java.sql.SQLException: ORA-01401: 插入的值对于列过大
theFilenameStrings200407120008.jpg,
prograph.getProperty(tagname)=s200407120008.jpg
curimages200407120008.jpg
java.sql.SQLException: ORA-00001: 违反唯一约束条件 (CMS.PK_CP_RECORD_REG_NO)
java.sql.SQLException: ORA-00001: 违反唯一约束条件 (CMS.PK_CP_RECORD_REG_NO)
java.sql.SQLException: ORA-01401: 插入的值对于列过大
singnet 2004-07-12
  • 打赏
  • 举报
回复
是啊,必须不能重复,因为是一条一条新闻
chanet 2004-07-12
  • 打赏
  • 举报
回复
已经设置字段为唯一的~ 不可以重复~
/api/USB 接口地址 常见错误结果和解决方法: 下面凑字数 {“code”:“20004”,“message”:“企业实时数据获取验签证书未在服务系统注册”,“total”:0,“serviceTime”:1500000000000} 得到这个结果,说明证书没有注册,测试环境联系管理员,生产环境需要到单一窗口去注册上传。如果已经上传了的,去看看你填的ebpCode是否是你自己的。 {“code”:“20000”,“message”:“上传失败 java.lang.IllegalStateException: xxxx这里是错误信息内容”,“total”:0,“serviceTime”:1500000000000} 这个错误说明上传的数据格式不对,海关系统无法解析,注意看看是否有字段类型或者格式错误,也注意看具体看错误内容,一般都有提示。 {“code”:“20005”,“message”:“验签失败”,“total”:0,“serviceTime”:1500000000000} 得到这个信息,说明上传的内容格式没问题了,验签失败,可能加签过程不对,一般都是字符串或者加签格式不对导致的,相见加签部分的细节,注意比对加签内容的格式和样例是否一致。另外也要看看用得证书什么的有没有问题。 {“code”:“20006”,“message”:“上传失败,入库失败 java.sql.SQLException: ORA-00001: 违反唯一约束条件 (sessionID重复)”,“total”:0,“serviceTime”:1500000000000} 得到这个消息,恭喜你,测试基本成功了:加签成功、数据格式没有问题了,接下来就可以自己生成模拟数据去测试了。 {“code”:“10000”,“message”:“上传成功”,“total”:0,“serviceTime”:1500000000000} 恭喜,测试成功。

17,086

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧