`
cakin24
  • 浏览: 1328385 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

Oracle数据库触发器数据的确认

阅读更多

一 需求

涨工资不能越涨越少。
 
二 代码
  1. --触发器应用场景2:数据的
  2. --涨后的薪水不能少于涨前的薪水
  3. /*
  4. :old和:new代表的是同一条记录
  5. :new 表示操作该行之前,这一行的值
  6. :old 表示操作该行之后,这一行的值
  7. */
  8. create or replace trigger checksalary
  9. before update
  10. on emp
  11. for each row
  12. begin
  13. if:old.sal >:new.sal then
  14. raise_application_error(-20002,'涨后的薪水不能少于涨前的薪水 涨前'||:old.sal||'涨后'||:new.sal);
  15. endif;
  16. end;
  17. /
 
三 验证
SQL> update emp set sal=sal+1 where empno=7839;
 
已更新 1 行。
 
SQL> update emp set sal=sal-1 where empno=7839;
update emp set sal=sal-1 where empno=7839
       *
第 1 行出现错误:
ORA-20002: 涨后的薪水不能少于涨前的薪水 涨前10101涨后10100
ORA-06512: 在 "SCOTT.CHECKSALARY", line 3
ORA-04088: 触发器 'SCOTT.CHECKSALARY' 执行过程中出错
分享到:
评论

相关推荐

    oracle数据库dba管理手册

    4.4.3 具有历史数据的产品OLTP数据库 设计 71 4.4.4 数据仓库设计 72 4.5 文件位置 75 4.6 数据库空间使用概述 76 4.6.1 storage子句的意义 77 4.6.2 表段 78 4.6.3 索引段 79 4.6.4 回滚段 79 4.6.5 临时段 79 ...

    oracle数据库11G初学者指南.Oracle.Database.11g,.A.Beginner's.Guide

    《Oracle Database 11g初学者指南》带领读者循序渐进地学习数据库设置、管理、编程、备份和恢复。还深入介绍了SQL和PL/SQL。为了易于学习,这本独特的Oracle Press指南是这样组织的: 核心概念——Oracle Database ...

    解决ORACLE死锁问题

    交,另一条对于这一列数据做更新操作的语句在执行的时候就会处于等待状态, 此时的现象是这条语句一直在执行,但一直没有执行成功,也没有报错。 三、死锁的定位方法 通过检查数据库表,能够检查出是哪一条语句被...

    21天学通Oracle

    1.1.3 Oracle数据库的特点 24 1.2 安装Oracle数据库 25 1.2.1 Oracle数据库的版本变迁及安装环境 25 1.2.2 安装过程 26 1.2.3 安装中需要注意的问题 27 1.3 本章小结 28 1.4 习题 28 第2章 Oracle常用工具...

    Oracle8i_9i数据库基础

    第一章 Oracle数据库基础 23 §1.1 理解关系数据库系统(RDBMS) 23 §1.1.1 关系模型 23 §1.1.2 Codd十二法则 24 §1.2 关系数据库系统(RDBMS)的组成 24 §1.2.1 RDBMS 内核 24 §1.2.2 数据字典概念 25 §1.3 ...

    ORACLE11G宝典.rar 是光盘里面的内容,书太厚咧没法影印啊

     《Oracle11g宝典》是Oracle数据库管理员、安全管理员、网络管理员、应用开发人员的参考指南,还是Oracle技术支持和培训机构、Oracle学习班、高等院校计算机专业数据库课程的参考教材和上机指导教材。每类人员都...

    oracle10g课堂练习I(2)

    Oracle 数据库体系结构 1-8 数据库结构 1-9 Oracle 内存结构 1-10 进程结构 1-12 Oracle 实例管理 1-13 服务器进程和数据库缓冲区高速缓存 1-14 物理数据库结构 1-15 表空间和数据文件 1-17 SYSTEM 和 ...

    ORCL数据库数据备份.rar

    echo 正在备份 Oracle 数据库,请稍等…… exp userid=dasj/dasj(红色数据库名称)@10.17.0.151:1521/orcl (远程备份填写服务器地址,本机备份无需填写服务器地址)file=D:\140602sjbf\1\(存储路径)dasj.dmp ...

    Oracle DBA 参考手册

    10.7.2. 确定Oracle数据库中重复的记录 61 10.7.2.1. 自关联查询方法 61 10.7.2.2. GROUP BY/HAVING查询方法 61 10.7.2.3. Exception into子句 61 11. 备份与恢复 62 11.1. Oracle 归档模式 62 11.2. 备份 62 11.2.1...

    会议管理系统数据库设计文档.doc

    在oracle数据库设计中,一 般来说,对于定长的字符数据字段,取字符类型(char),对于不定长的,取变长字符类 型(varchar)。 2.对于以分类形式出现的字段,建议不使用字符类型,而使用数字类型。如:货物 是否配送为...

    ORACLE9i_优化设计与系统调整

    §1.1 Oracle数据库结构 23 §1.1.1 Oracle数据字典 23 §1.1.2 表空间与数据文件 24 §1.1.3 Oracle实例(Instance) 24 §1.2 Oracle文件 26 §1.2.1 数据文件 26 §1.2.2 控制文件 26 §1.2.3 重做日志文件 26 §...

    Navicat Premium操作手册.7z

    3Oracle 外部表访问参数59Oracle 索引组织表59Oracle 索引组织表选项59Oracle 视图60Oracle 函数或过程61Oracle 数据库链接62Oracle 索引63Oracle Java65Oracle 实体化视图66Oracle 实体化视图日志68Oracle 包69...

    毕设&课设&项目&实训-一个英语学习系统(web),数据库用的Oracle,主要用到了存储过程,触发器等。还有数据.zip

    包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。 包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、python...

    Oracle Database 11g初学者指南--详细书签版

    在技术会议和用户组会议上她乐于展现和分享有关Oracle数据库主题的思想.她的Email是michelle_malcher@ioug.org. 目录 封面 -14 封底 -13 扉页 -12 版权 -11 关于作者 -10 前言 -8 目录 -5 第1章 数据库基础 1 1.1 ...

    精通SQL 结构化查询语言详解

    16.3 Oracle数据库中触发器的操作  16.3.1 Oracle触发器类型  16.3.2 触发器的创建 16.3.3 创建系统触发器  16.3.4 触发器的触发次序和触发谓词的使用  16.3.5 Oracle触发器的管理  第17章 SQL中游标的...

    精通sql结构化查询语句

    1.3 数据模型 1.3.1 关系数据库模型 1.3.2 数据模型的构成 1.3.3 常见的数据模型 1.4 关系型数据库 1.4.1 关系型数据库的定义 1.4.2 关系型数据库与表 1.4.3 主键与外键 1.4.4 字段约束 1.4.5 数据的完整性 1.4.6 ...

Global site tag (gtag.js) - Google Analytics