我这个表的主键是编号,往这个表中插数据时,当oracle报重复主键错误的时候,把重复的主键的“错误信息”字段写成“插入主键错误”,请问该如何往下写:
EXCEPTION
WHEN DUP_VAL_ON_INDEX THEN
下边该如何写呢?主要是怎么找到当前重复的主键呢?
我这个表的主键是编号,当oracle报重复主键错误的时候
答案:2 悬赏:60 手机版
解决时间 2021-12-18 11:23
- 提问者网友:姑娘长的好罪过
- 2021-12-17 19:58
最佳答案
- 五星知识达人网友:西风乍起
- 2021-12-17 20:05
raise_application_error(-20003,'插入主键错误');
不一定是20003,只要大于20000就可以
不一定是20003,只要大于20000就可以
全部回答
- 1楼网友:夜余生
- 2021-12-17 20:16
1、从oracle10g开始删除数据库表的时候并不是真正删除,而是放到了recyclebin中,这个过程类似 windows里面删除的文件会被临时放到回收站中。
2、删除的表系统会自动给他重命名就是你看到的 【bin$】开头的名字
3、通过 show recyclebin 命令可以查看被删掉的表的详细信息,或者查询
select * from recyclebin;
4、清空回收站的命令:
purge recyclebin;
5、如果不想删除的表经过回收站
drop table 表名 purge;
或者停用数据库的回收战功能
10.1版本中,修改隐藏参数 _recyclebin
alter system set "_recyclebin" = false;
10.2版本中,
alter system set recyclebin = off;
你可以对回收站进行清空,然后再去查询下该表的主键还存不存在。
---
希望对您有所帮助。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯