Oracle使用序列+触发器实现表自增主键
1.建表
-- Create table 创建表 test
create table TEST
(testid NUMBER not null,name NVARCHAR2(20) not null
)--comment 注释
comment on column TEST.testid is 'ID';
comment on column TEST.name is '名称';-- Create/Recreate primary, unique and foreign key constraints 加主键
alter table TEST add constraint PK_TEST primary key (TESTID)
2.创建索引
CREATE SEQUENCE test_sequence
MINVALUE 1
MAXVALUE 999999999
START WITH 1
INCREMENT BY 1
CACHE 20
ORDER;
3.创建触发器
CREATE OR REPLACE TRIGGER test_tg
BEFORE INSERT ON test
FOR EACH ROWDECLARE-- local variables hereBEGIN--注意 这里的 INTO:new. 后面加需要自增的字段名称 这里对应 test表中的 testid 列SELECT test_sequence.nextval INTO:new.testid FROM dual;END test_tg;
4.测试
--插值
INSERT INTO TEST VALUES(NULL,'卡卡西');
INSERT INTO TEST VALUES(NULL,'阿斯玛');
INSERT INTO TEST VALUES(NULL,'夕阳红');
INSERT INTO TEST VALUES(NULL,'雷藏');
INSERT INTO TEST(NAME) VALUES('皮卡丘')--查询
SELECT *FROM TEST;
结果图:
Oracle使用序列+触发器实现表自增主键相关推荐
- oracle批量插入并且返回自增主键_mybatis + (oracle)实现主键自增 + 插入数据并返回主键...
一.实现主键自增 在oracle数据库中,主键并没有办法自动增长,无法使用insert对应的useGeneratedKeys和keyProperty属性自动返回增加的主键. 要实现自增需要修改 ID列 ...
- oracle批量插入并且返回自增主键_oracle 自增主键实现批量更新和增加sql
增加: 方案1 INSERT INTO WF_TASKTEMP_DEALSTAFF (DEAL_ID, TEMP_ID, STAFF_ID,DEAL_TYPE, STATUS) SELECT WF_T ...
- oracle 实现 自增主键功能
转自:https://blog.csdn.net/zxh2075/article/details/78488141 之前有一项工作是将mysql的数据库实现转移到oracle,遇到了自增主键实现的问题 ...
- 学习笔记 - Postgres如何创建有自增主键的表
1.MySQL迁移到Postgres 之前用mysql习惯了,所以建表都是有自增主键的,建表规范里面大部分都是这样约定的,比如:(`id` BIGINT (11) UNSIGNED NOT NULL ...
- java 并发 主键_高并发数据库自增主键分析
在一般情况下,在新增领域对象后,都需要获取对应的主键值.使用应用层来维护主键,在一定程度上有利于程序性能的优化和应用移植性的提高.在采用数据库自增主键的方案里,如果JDBC驱动不能绑定新增记录对应的主 ...
- mybatis使用statement.getGenreatedKeys(); useGeneratedKeys=”true”;使用自增主键获取主键值策略和Oracle不支持自增,Oracle使用序列
parameterType: 参数类型, 可以省略 mysql支持自增主键,自增主键的获取, mybatis也是利用statement.getGenreatedKeys(); useGenerate ...
- oracle 主键自增函数_Oracle数据库中创建自增主键的实例教程
在设计数据库表的时候发现Oracle没有自增主键的设置,Google了解到Oracle本身并不支持自增主键,需要通过序列(Sequence)和触发器(Trigger)实现. 创建表Student Cr ...
- ORACLE利用序列实现ID自增
1.仅使用序列产生自增主键 序列(Sequence)是一种可以被多个用户使用的用于产生一系列唯一数字的数据库对象.序列定义存储在数据字典中,通过提供唯一数值的顺序表来简化程序设计工作,可以使用序列自动 ...
- Mysql和Oracle获取自增主键
mysql <!-- parameterType:参数类型,可以省略, 获取自增主键的值: mysql支持自增主键,自增主键值的获取,mybatis也是利用statem ...
最新文章
- 收藏这10个办公神器,让你的职场办公更高效!
- 【 MATLAB 】 WLLS algorithm Simulation of TOA - Based Positioning
- openStack controller 管理网口TX数据量非常大 网络总是丢包
- Android 消息机制详解(Android P)
- CGAN生成cifar10, cifar100, mnist, fashion_mnist,STL10,Anime图片(pytorch)
- 数字图像处理之边缘检测,图像分割
- 【搜索引擎】全文索引数据结构和算法
- GCC编译警告选项的学习
- php web browser,如何在PHP Scriptable Web Browser中調用javascript函數
- Cknife(中国菜刀) and AntSword(中国蚁剑)使用
- Python中的注释和文档
- 短视频制作团队的工作流程分为5个步骤
- android 7.0 root工具,KingRoot全球率先实现Android 7.0一键 Root
- Postman使用技巧3
- Openlayer 切换鼠标样式
- uni-gram与bi-gram语言模型
- 提高网吧上座率,TG-NET网吧光纤万兆方案
- pushpush(双向队列/列表)
- SDSoC和SDAccel和SDNet和HLS工具介绍
- 前端基础——URL详解
热门文章
- java 中 如何sum 乘法_JAVA中解决大数乘法和加法问题
- java小写金额转大写金额
- 2013秋浙大远程教育计算机应用基础-9计算机多媒体技术,2013秋浙大远程教育计算机应用基础-9.计算机多媒体技术...
- 供应商管理难点在哪 SRM供应商系统助推企业提升管理水平
- 计算机服务中打印机共享,用双网卡实现计算机\打印机互联共享
- win10出现驱动强制签名_错误代码:0xc0000428以及引导文件如何修复
- 来看看 “基于卷积神经网络的推荐系统“是怎样的
- cronolog对tomcat的catalina.out日志分割
- 上手实操分布式系统下的SSO单点登录
- Anki 自定义媒体文件夹 更改C盘默认文件夹