问题:oracle触发器无效且未通过重新验证;结果:触发器里面没有加分号(;)
oracle无效且未通过重新验证
代码如下:
--创建中国地图表 create table china_address ( id number not null primary key , address_name varchar2(30) not null , parent_address_id number , foreign key (parent_address_id) references china_address(id) ); --创建中国地图序列 create sequence china_address_sequ minvalue 1 maxvalue 10000 start with 1 increment by 1 nocycle cache 5; --创建中国地图主键自增长触发器 create trigger china_address_increase_tr before insert on china_address for each row begin select china_address_sequ.nextval into :new.id from dual end china_address_increase_tr; |
修改如下:
CREATE
OR
REPLACE
TRIGGER
CHINA_ADDRESS_INCREASE_TR BEFORE
INSERT
ON
CHINA_ADDRESS
FOR
EACH ROW
BEGIN
SELECT
CHINA_ADDRESS_SEQU.NEXTVAL
INTO
:NEW.ID
FROM
DUAL;
END
CHINA_ADDRESS_INCREASE_TR;
SELECT CHINA_ADDRESS_SEQU.NEXTVAL INTO:NEW.ID FROM DUAL
后面少了个符号";"
PL/SQL认为语句后面带有一个;才作为一个语句的结束
此外,不建议使用触发器做这个事情,不如使用
INSERT INTO china_address VALUES(CHINA_ADDRESS_SEQU.NEXTVAL,'sd',1);
更健壮.
问题:oracle触发器无效且未通过重新验证;结果:触发器里面没有加分号(;)的更多相关文章
- ORA -04098 触发器无效且未通过重新验证
转自:https://blog.csdn.net/m15188153014/article/details/53080187 ORACLE 菜鸟,犯了一个低级错误,用PowerDesigner的SQL ...
- 触发器 'SA.U_USER_INFO_TRG' 无效且未通过重新验证--Oracle序列
程序开发时报错:触发器 'SA.U_USER_INFO_TRG' 无效且未通过重新验证打开触发器的定义,执行其中的语句,发现序列 U_USER_INFO_SEQ 未定义.什么是序列呢?序列相当于sql ...
- DbVisualizer:Oracle触发器,解决ORA-04098: 触发器 'USER.DECTUSERTEST_TRI' 无效且未通过重新验证
我没有用orcal的管理工具,而是用的DbVisualizer 9.5.2,管理数据库. 场景:需要在oracle里面实在自增字段,在网上一搜一堆文档,然后自己就找了一段自己写如下: drop tab ...
- Oracle:新增用户登录提示“ORA-04098:触发器‘GD.ON_LOGON_TRIGGER’无效且未通过重新验证”
接着上一篇创建一个只有查看权限的用户,在测试环境,新建账号后尝试登录,提示如下: 1.看提示是base库的触发器有问题了,所以先定位到这个触发器 SELECT * FROM DBA_OBJECTS W ...
- Oracle 参数化更新数据时报错:Oracle ORA-01722: 无效数字
报错:Oracle ORA-01722: 无效数字 看了一篇博客,据说是参数与列名不能一致,改过之后还是报一样的错误:Oracle ORA-01722: 无效数字 ,后来试了一下,不是参数名必须不一样 ...
- oracle 报“无效数字”异常和“ORA-01830: 日期格式图片在转换整个输入字符串之前结束”
1.问题1 执行下列SQL: sql = "select count(1) as totle from vhl_model_data a where a.OBTAIN_CREATE_TIME ...
- 安装wls报(主清单位置 "/u01/app/oracle/inventory" 无效 (无法读取/写入/执行))
安装出现的错误: [weblogic@localhost ~]$ java -jar fmw_12.1.3.0.0_wls.jar 启动程序日志文件为/tmp/OraInstall2019-07-31 ...
- Oracle数据库编程:使用PL/SQL编写触发器
8.使用PL/SQL编写触发器: 触发器存放在数据缓冲区中. 触发器加序列能够实现自动增长. 在触发器中不能使用connit和rollback. DML触发器 ...
- (4.30)全面了解触发器:DML、DDL、LOGON触发器
DML.DDL.LOGON触发器 转自:https://www.cnblogs.com/seusoftware/p/9120632.html 触发器可以理解为由特定事件触发的存储过程, 和存储过程.函 ...
随机推荐
- nginx流量全copy记录
参考:http://tyrion.iteye.com/blog/2311987 准备两台服务器: 0.0.0.1 0.0.0.2 在 0.0.0.1上 . 下载 wget https://github ...
- SBT搭建Spark
http://www.cnblogs.com/yongjian/p/6211007.html http://www.aboutyun.com/thread-8587-1-1.html http://b ...
- ubuntu/centos printk 终端中不能打印信息及解决办法
今天用ubuntu来调试信息,printk死活打印不出信息,即使把级别跳到<0>,即KERN_ALERT也不行,后再搜了好长时间网络, 这个地址:http://bbs.chinaunix. ...
- hibernate报错org.hibernate.SessionException: Session was already closed
org.hibernate.SessionException: Session was already closedat org.hibernate.internal.SessionImpl.clos ...
- 178. Rank Scores
问题描述 解决方案 select sc.Score, (select count(*) from (select distinct Score from Scores ) ds where ds.Sc ...
- BEC listen and translation exercise 12
More than 220 cities now have air quality monitoring systems and 42 others will have systems in plac ...
- 机器学习:YOLO for Object Detection (二)
之前介绍了 YOLO-v1 单纯的利用一个卷积网络完成了目标检测,不过 YOLO-v1 虽然速度很快,但是比起其他的网络比如 Fast R-CNN 检测的准确率还是差不少,所以作者又提出了改良版的 Y ...
- WC2019 I 君的商店
交互题 一个 01 序列,告诉你其中 1 有奇数个还是偶数个,每次可以给定两个集合 $A$,$B$,系统会告诉你 $A \leq B$ 或者 $B \leq A$ 求序列 交互次数要求 $5n + O ...
- 利用python进行数据分析—数据清洗记录3,map,apply,
社会心态调查报告 导语: 时代决定心态,心态映照时代.社会心态产生于社会个体心理,又以整体的形态存在,进而影响着每个社会成员的社会价值取向和行为方式,影响着国家经济政治和社会发展大局.良好的社会心 ...
- js中的点击事件(click)的实现方式
<!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8&quo ...