`

ORA-04098: 触发器无效且未通过重新验证问题

SQL 
阅读更多

他大爷的,这个问题折腾了老夫2个小时,以前用的好好地。。。。怎么今天突然出现问题了?

我还以为是其它什么地方出问题了呢,进控制台一看,刚建好的触发器状态显示为“invalid”无效。。。。。哦?奇怪了。。。。找来找去原来是用户权限的问题。。在sqlplus中一会儿切到DBA,一会儿切到普通用户下。。。。汗。。犯得这是什么低级错误嘛!。。气傻老夫啊

 

原因是:序列是在系统管理员权限下建的,而触发器又是在普通用户下建的,所以,在触发器中使用系统管理员权限下建的序列就无效了。

解决方法:同一个用户下建序列和触发器,即可。

 

1。先sqlplus登录了:

SQL> conn gch/gch;

 

2。建表:

create table position
(
 id number(10) not null,
 deviceName varchar2(30) not null primary key,
 imageName varchar2(30) not null,
 effectName varchar2(30) not null,
 xPos number(6) not null,
 yPos number(6) not null,
 data number(10,4)
)
tablespace users
/

 

3。建序列:

create sequence position_seq

start with 1

increment by 1

minvalue 1

maxvalue 9999999

nocycle

nocache

noorder;

/

4。建触发器:

create or replace trigger position_trigger
  before insert on position
  for each row
begin
    select position_seq.nextval into:new.id from sys.dual;
end;
/

5。好了,insert一条记录测试一下喽。。。。

分享到:
评论
1 楼 谢谢你的祝福 2014-10-15  
特地登陆上来感谢一下楼主,解决问题。

相关推荐

    Oracle 授权 ORA-00990: 权限缺失或无效

    在Oracle数据库管理中,"ORA-...通过理解和掌握这些知识点,您可以有效地解决“ORA-00990: 权限缺失或无效”的问题,并更好地管理Oracle数据库中的权限分配。记住,权限管理是数据库安全的重要组成部分,必须谨慎处理。

    ORACLE_维护知识大全.doc

    - 无效对象和回滚段:检查是否有未解决的依赖关系或错误导致的对象无效或回滚段问题。 4. 资源使用情况检查: - 初始化参数:分析`init.ora`或`spfile`中的参数设置,确保符合性能需求。 - 数据库连接:检查连接...

    ORACLE_维护知识大全.docx

    - **无效触发器**:修复无效触发器,确保业务逻辑正确执行。 通过以上步骤,可以全面地管理和维护Oracle 10g数据库,确保其高效、稳定和安全运行。定期进行这些检查和优化操作,可以预防潜在问题,延长数据库的...

    数据库日常检查.doc

    9. **无效对象检查**:无效的对象(如触发器、视图、过程、函数)可能影响到业务逻辑。通过`dba_objects`找出并手动重新编译,确保数据库的正常运行。 10. **Sequence检查**:Sequence是数据库中生成唯一ID的重要...

    [Oracle] 如何使用触发器实现IP限制用户登录

    3) 当从本地(例如`192.168.219.23`)登录时,由于触发器并未针对所有IP进行限制,因此连接仍然成功。这种情况下,如果需要限制本地登录,需要在触发器中添加相应的条件。 触发器的使用在数据库安全管理中非常常见...

    数据库日常检查命令

    9. **无效对象检查**:查询`DBA_OBJECTS`视图中的非'VALID'对象,包括触发器、视图、过程和函数。发现后,手动重新编译以确保其有效性。 10. **Sequence检查**:`DBA_SEQUENCES`视图可以展示序列的状态,检查序列...

    Oracle数据迁移手册[定义].pdf

    例如,查询数据库**版本**确认迁移后的新环境与旧环境匹配,查询**数据库实例名**以确认连接正确,通过查询**依赖于其他账号的对象信息**和**其他账号依赖的对象信息**来处理跨用户的依赖问题,查找并处理**无效的...

    ORACLE9i_优化设计与系统调整

    §12.1.2 调整或使触发器无效 137 §12.1.3 重组数据 137 §12.2 优化目标 137 §12.2.1 优化序列SQL语句 137 §12.2.2 优化并行执行 138 §12.2.3 调整OLTP应用 138 §12.3 实际优化例子 139 §12.3.1 避免基于规则...

Global site tag (gtag.js) - Google Analytics