案例------触发器

insert 触发器示例

create trigger tri_insert

on student

for insert

as

declare @student_id char(10)

select @student_id=s.student_id from

student s inner join inserted i

on s.student_id=i.student_id

if @student_id=‘0000000001‘

begin

raiserror(‘不能插入1的学号!‘,16,8)

rollback tran

end

go

update触发器示例

create trigger tri_update

on student

for update

as

if update(student_id)

begin

raiserror(‘学号不能修改!‘,16,8)

rollback tran

end

go

delete触发器示例

create trigger tri_delete

on student

for delete

as

declare @student_id varchar(10)

select @student_id=student_id from deleted

if @student_id=‘admin‘

begin

raiserror(‘错误‘,16,8)

rollback tran

end

案例------触发器,布布扣,bubuko.com

时间: 2024-12-17 05:06:11

案例------触发器的相关文章

oracle存储过程和存储函数&触发器

oracle存储过程和存储函数 指存储在数据库中供所有用户程序调用的子程序叫存储过程,存储函数 存储过程和存储函数的相同点:完成特定功能的程序 存储过程和存储函数的区别:是否用return语句返回值 =========================创建和使用存储过程============================= 用create procedure命令建立存储过程和存储函数 语法: create [or replace] procedure 过程名(参数列表) as PLSQL子程序

Oracle数据库速查知识文档

项目介绍 该项目记录了Oracle相关的速查知识汇总,主要涉及了oracle基础使用.SQL基础.oracle函数.oracle触发器.oracle高级查询.PL/SQL编程基础.PL/SQL存储过程等.若有新增,还将不断添加中. SQL基础部分 1.简介 Oracle Database,又名Oracle RDBMS,或简称Oracle,是甲骨文公司的一款关系数据库管理系统.本课程主要介绍Oracle的SQL基础,包括表空间的概念,如何登录Oracle数据库,如何管理表及表中的数据,以及约束的应

MySQL 触发器结构及三个案例demo

--你必须拥有相当大的权限才能创建触发器(CREATE TRIGGER),如果你已经是Root用户,那么就足够了.这跟SQL的标准有所不同. CREATE TRIGGER语法 CREATE TRIGGER trigger_name trigger_time trigger_event    ON tbl_name FOR EACH ROW trigger_stmt 触发程序与命名为tbl_name的表相关. trigger_time是触发程序的动作时间.它可以是BEFORE或AFTER,以指明触

关于oracle的函数,存储过程,触发器,序列,视图,左右连接一些的应用 带案例

CREATE TABLE STUDENT( --创建学生表  ID NUMBER(10) PRIMARY KEY,   --主键ID  NAME VARCHAR2(20),  CLASSNAME VARCHAR2(20) --班级ID);CREATE SYNONYM STU FOR STUDENT; --给学生表STUDENT创建别名(同义词)INSERT INTO STUDENT VALUES(1,'Tom',1);INSERT INTO STUDENT VALUES(2,'Jack',1);

C#触发器知识总结及案例

触发器 触发器是在对表进行插入.更新.删除操作时自动执行的存储过程,常用于强制业务规则,是一种高级约束,可以定义比用check约束更为复杂的约束.可以执行复杂的SQL语句(if/while/case) 触发器可以定义在特定的表上,与表相关 自动触发执行 不能直接调用 是一个事务(可以回滚) 触发器的类型 (1) DELETE触发器 (2) INSERT触发器 (3) UPDATE触发器 inserted表和deleted表 触发器触发时: 系统自动在内存中创建deleted表或inserted表

MySQL数据库(7)_用户操作与权限管理、视图、存储过程、触发器、基本函数

用户操作与权限管理 MySQL用户操作 创建用户 方法一: CREATE USER语句创建 CREATE USER "用户名"@"IP地址" IDENTIFIED BY "密码"; 方法二: INSERT语句创建 INSERT INTO mysql.user(user,host, password,ssl_cipher,x509_issuer,x509_subject) VALUES('用户名','IP地址',password('密码'),'',

SymmetricDS 异构数据库同步软件部署案例

SymmetricDS是一个开源的同步软件,该软件是基于java环境编写的,在运行的时候需要安装JDK.SymmetricDS可以同步文件和数据库,本文的重点是数据库方面的同步. SymmetricDS支持多种数据库的同步,支持的数据库如下: Oracle, MySQL, MariaDB, PostgreSQL, MS SQL Server (including Azure), IBM DB2, H2, HSQLDB, Derby, Firebird, Interbase, Informix,

pt-online-schema-change中update触发器的bug

pt-online-schema-change在对表进行表结构变更时,会创建三个触发器. 如下文测试案例中的t2表,表结构如下: mysql> show create table t2\G *************************** 1. row *************************** Table: t2 Create Table: CREATE TABLE `t2` ( `id` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KE

plsql触发器

11 数据库的触发器trigger 定义:根据发生的事件而执行的一种存储子程序 数据库事件:DML事件.DDL事件.用户事件.系统事件触发器分类:DML触发器.DDL触发器.系统用户事件触发器 11.1 触发器的创建 (1) DML触发器 A insert事件 create or replace trigger ai_org_trig   before insert on org_tab  for each rowbegin   update sec_hrc_audit set num_rows