1. 首先了解trigger的概念
    触发器
    oracle使用
    触发器概念

  2. 使用trigger实现主键自增
    ----创建表
    create table tb_user
    (
    ID NUMBER PRIMARY KEY,
    user_name varchar2(20),
    user_address varchar2(30)
    );
    -----创建tb_user_seq序列
    CREATE SEQUENCE tb_user_seq MINVALUE 1 MAXVALUE 999
    INCREMENT BY 1
    START WITH 1;
    ------创建触发器,在insert数据前获取next_id
    CREATE OR REPLACE TRIGGER tb_user_tri
    before
    insert on tb_user
    for each row
    declare
    next_id NUMBER;
    begin
    SELECT tb_user_seq .NEXTVAL INTO next_id FROM dual;
    :new.ID :=next_id;
    end;


—创建表user_tb
create table user_tb
(
userID integer PRIMARY key,
user_name VARCHAR2(20),
sex VARCHAR2(10)
);
----创建序列
CREATE SEQUENCE user_tb_seq
MINVALUE 1 maxvalue 9999 --序列从1–到9999
INCREMENT by 1
start WITH 1;

----创建触发器
CREATE or REPLACE TRIGGER user_tb_tri
before
insert on user_tb
for EACH ROW
BEGIN
SELECT user_tb_seq.nextval into:new.userID from dual;
end;

—测试插入数据
insert into USER_TB (USER_NAME,SEX) VALUES(‘李红’,‘女’);
insert into USER_TB(USER_NAME,SEX)VALUES(‘大伟’,‘男’);

备注:

create or replace TRIGGER 触发器名字
BEFORE INSERT ON 表名
for each row
DECLARE
next_id NUMBER;

BEGIN -------触发语句
select 序列名.Nextval into next_id from dual;
:new.id:=next_id;
END;

oracle 使用trigger实现主键自增相关推荐

  1. oracle 创建表定义主键,Oracle 学习----:创建表(主键自增)

    一.创建表 create table testTable ( Id numbere, name varchar2(100), age number, createTime date, primary ...

  2. mybatis 实现oracle主键自增的机制

    本篇文章将研究mybatis 实现oracle主键自增的机制 首先我们看对于同一张student表,对于mysql,sql server,oracle中它们都是怎样创建主键的 在mysql中 [sql ...

  3. 用tirgger实现主键自增(trigger+sequence)

    用tirgger实现主键自增: create table book (bid number(4) primary key, bname varchar2(20) ) create sequence b ...

  4. oracle批量插入并且返回自增主键_mybatis + (oracle)实现主键自增 + 插入数据并返回主键...

    一.实现主键自增 在oracle数据库中,主键并没有办法自动增长,无法使用insert对应的useGeneratedKeys和keyProperty属性自动返回增加的主键. 要实现自增需要修改 ID列 ...

  5. oracle设置主键自增(超简单)

    oracle设置主键自增 不同于mysql,oracle主键自增不能在建表时直接设置,其实也很简单. 1.建表 CREATE TABLE test(id NUMBER NOT NULL,key1 VA ...

  6. oracle自增主键用途,Oracle主键自增

    在设置主键自增时有几种方法,今天介绍其中一种方法:sequence+trigger 1.创建表 create table tbl_card --创建校园卡表 ( id int primary key, ...

  7. oracle主键自增

    前言 众所周知,MySQL数据库的主键自增设置非常简单,任何一个常用的可视化工具都支持,只要打一下勾就可以开启主键自增了.然而Oracle并没有那么简单,它需要执行几个简短语句. 操作步骤 为了方便讲 ...

  8. oracle 主键自增函数_oracle 主键自增

    注意:new后面的和主键对应 CREATE TABLE item ( iid INT, title VARCHAR2(50), CONSTRAINT pk_iid PRIMARY KEY (iid) ...

  9. 1、Oracle主键自增、清0,与用户授权

    1.相关命令: ​ sqlplus /nolog 查看Oracle数据库是否安装成功 ​ conn uid/ups@orcl 连接数据库::uid是用户名.ups是密码,orcl是数据库名 ​ 通过S ...

最新文章

  1. 搭建Hadoop的Eclipse开发环境
  2. Jvm 系列(三):GC 算法 垃圾收集器
  3. keta-custom DWZ validationEng IE 下表单重复提交BUG原因及修复方法
  4. MASH结构相噪分析的simulink仿真
  5. 桐花万里python路-高级篇-并发编程-03-线程
  6. jquery 处理json字符串
  7. 如何遍历给定目录中的文件?
  8. jsoup Java HTML解析器
  9. 细数AVPlayer的那些坑
  10. 图嵌入(一)--综述
  11. js判断当前页面是否有父页面,页面部分跳转解决办法,子页面跳转父页面不跳转解决 (原)...
  12. 堆排序时间复杂度计算
  13. 计算机word的关闭怎么办,电脑无法打开Word提示已停止工作并自动退出怎么办
  14. 查看自己电脑外网IP
  15. Python数组索引
  16. 【经典】zheng项目搭建
  17. 对于人生道路的些许感慨
  18. 记录:mac和win共享磁盘(同一局域网)
  19. 开发im即时通讯如何用Netty实现心跳机制、断线重连机制
  20. 网络地址转换--静态NAT

热门文章

  1. 苹果手机测试网络速度的软件,iPhone6怎么看网速?查看苹果6 Plus网速给不给力的方法...
  2. 不重启容器的情况下添加或者删除端口
  3. MacBook Pro安装WIN10问题集锦
  4. cross_entropy中ignore——index
  5. 后浪青年的聊天,需要Python助威!
  6. 二叉树(树,森林,二叉树互转)
  7. seo文章重复率高不利于收录
  8. 【虚拟化qemu】(二)--- qemu 虚拟化软件使用
  9. UE4移动组件详解(三)——RootMotion与特殊移动模式的实现思路
  10. 腾讯广告 上传行为数据【添加企业客服微信】