广告
返回顶部
首页 > 资讯 > 数据库 >oracle 触发器trigger(主键自增长)
  • 224
分享到

oracle 触发器trigger(主键自增长)

oracle触发器trigger(主键自增长) 2014-05-12 19:05:38 224人浏览 绘本
摘要

触发器trigger 触发器我们也可以认为是存储过程,是一种特殊的存储过程。 存储过程:有输入参数和输出参数,定义之后需要调用 触发器:没有输入参数和输出参数,定义之后无需调用,在适当的时候会自动执行。 适当的时候:触发器与表相关,当我们对

触发器trigger

触发器我们也可以认为是存储过程,是一种特殊的存储过程。

存储过程:有输入参数和输出参数,定义之后需要调用

触发器:没有输入参数和输出参数,定义之后无需调用,在适当的时候会自动执行。

适当的时候:触发器与表相关,当我们对这个相关的表中的数据进行DDL(数据的添加、修改、删除)操作的时候

 

存储过程

触发器

create proc proc_name

    --声明输入参数和输出参数

as

    --过程体

Go

create trigger tri_student_delete on student for delete

as

   …

go

 

:触发器是在对应的操作执行完成之后才执行的

 

sqlServer的数据字典中,提供了一张表deleted用户存储最后一次执行删除的数据

create trigger tri_student_delete on student for delete

as

   print "这是我们的第一个触发器";

   select * from deleted;

go

 

 

create trigger tri_student_insert on student for insert

as

   print "这是tri_student_insert";

go

 

 

create trigger tri_student_delete_insert on student for insert,delete

as

   print "触发器";

go

 

 

--删除一个学生信息,如果学生的年龄<21,则不进行删除

create trigger tri_stu_delete on student for delete

as

   declare @age int

   select  @age=sage from deleted--deleted存储执行删除的数据

   if(@age<21)

   begin

      raiserror("学生年龄太小,手下留情!",18,11);

      rollback;--撤销执行的操作

   end

go

 

序列

Create Sequence gygddj_cfjczb_Sequence
 Increment by 1     -- 每次加几个 
 start with 1       -- 从1开始计数     
 nomaxvalue         -- 不设置最大值,设置最大值:maxvalue 9999  
 nocycle            -- 一直累加,不循环    
 cache 10; 

 

可以与序列配合使用(实现自增)

 Create trigger gygddj_cfjczb_Sequence before 
 insert on gygddj_cfjczb for each row 
 begin
 select gygddj_cfjczb_Sequence.nextval into:New.AUTOID from dual;
 end;

 

您可能感兴趣的文档:

--结束END--

本文标题: oracle 触发器trigger(主键自增长)

本文链接: https://www.lsjlt.com/news/2902.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • oracle 触发器trigger(主键自增长)
    触发器trigger 触发器我们也可以认为是存储过程,是一种特殊的存储过程。 存储过程:有输入参数和输出参数,定义之后需要调用 触发器:没有输入参数和输出参数,定义之后无需调用,在适当的时候会自动执行。 适当的时候:触发器与表相关,当我们对...
    99+
    2014-05-12
    oracle 触发器trigger(主键自增长)
  • Oracle触发器实现主键自增效果
    触发器的作用   触发器的作用类似拦截器.把一些针对数据库的DML操作(insert/update/delete/select)进行拦截,符合业务要求的进行操作,不符合要求...
    99+
    2022-11-12
  • Oracle 触发器是怎么实现主键自增效果
    今天就跟大家聊聊有关Oracle 触发器是怎么实现主键自增效果,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。触发器的作用  触发器的作用类似拦截器.把一些针对数据库的DML...
    99+
    2023-06-22
  • Oracle创建自增长主键的方法
    这篇文章将为大家详细讲解有关Oracle创建自增长主键的方法,文章内容质量较高,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Oracle创建自增长的步骤:创建自增长序列-- 创建自增长序列...
    99+
    2022-10-18
  • 通过触发器和自增序列实现oracle自增ID
    create sequence seq_tablename        start with 1        increment by 1;  create or replace trigger tri_tablename_i...
    99+
    2019-01-19
    通过触发器和自增序列实现oracle自增ID
  • mysql中怎么利用函数和触发器实现非主键自增
    这篇文章给大家介绍mysql中怎么利用函数和触发器实现非主键自增,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。函数set global log_bin_trust_...
    99+
    2022-10-18
  • Mybatis处理ORACLE自增的问题(通过触发器)
    在oracle中创建序列语句并执行:create sequence  user_seq start  with  1 increment  by ...
    99+
    2022-10-18
  • Oracle中如何用序列和触发器实现ID自增
    小编给大家分享一下Oracle中如何用序列和触发器实现ID自增,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!在设计数据库的时候,Oracle中没有类似SQL Server中系统自动分配ID作为...
    99+
    2022-10-18
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作