oracle如何创建表的自增ID(通过触发器)
Oracle中创建表的自增ID(通过触发器),序列的自增ID和触发器的自增ID的区别
1、新增数据(序列)
--创建示例表 --
create table Student(
stuId number(9) not null,
stuName varchar2(20) not null,
stuMsg varchar2(50) null
) -- 创建序列 Student_StuId_Seq --
create sequence Student_StuId_Seq
increment by 1
start with 1
minvalue 1
maxvalue 999999999; --调用序列 --
select Student_StuId_Seq.Nextval 序列号 from dual; --插入数据(序列)--
insert into Student(STUID,STUNAME) values(Student_StuId_Seq.Nextval,'王五');
2、新增数据(触发器)
--创建示例表 --
create table Student(
stuId number(9) not null,
stuName varchar2(20) not null,
stuMsg varchar2(50) null
) -- 创建序列 Student_StuId_Seq --
create sequence Student_StuId_Seq
increment by 1
start with 1
minvalue 1
maxvalue 999999999; --创建触发器 --
create or replace trigger Student_StuId_Trigger
before insert on Student ----(sysrole为表名)
for each row----触发每一行
begin
select Student_StuId_Seq.Nextval into :new.StuId from dual;
end; --新增数据(触发器)--
insert into Student(STUNAME) values('赵六');
3、查询结果
--查询数据--
select * from Student;
aaarticlea/png;base64,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" alt="" />
PS: 序列可以理解成一个获取表的自增ID的函数(手动),触发器是当新增数据(自动)时,获取表的自增ID
oracle如何创建表的自增ID(通过触发器)的更多相关文章
- oracle中如何创建表的自增ID(通过序列)
1.什么是序列呢? 序列是一数据库对象,利用它可生成唯一的整数.一般使用序列自动地生成主码值.一个序列的值是由特别的Oracle程序自动生成,因而序列避免了在运用层实现序列而引起的性能瓶颈. Orac ...
- Oracle数据库创建表ID字段的自动递增
转载地址:http://blog.itpub.net/22880668/viewspace-1117343/ 将表t_uaer的字段ID设置为自增:(用序列sequence的方法来实现) ----创建 ...
- Oracle的创建表和创建约束的Sql语句
Oracle的创建表和创建约束的Sql语法 1.创建表的语句 ---1.创建模拟的数据表 --- --1.1.创建学生表Student create table Student( StuId NUMB ...
- Oracle 10g创建表空间的完整步骤详解
本文我们主要介绍了Oracle 10g创建表空间的完整步骤,包括表空间的创建与删除.为应用创建用户以及权限的授予等操作,希望能够对您有所帮助. AD:WOT2014:用户标签系统与用户数据化运营培训专 ...
- Oracle数据库创建表是有两个约束带有默认索引
Oracle数据库创建表是有两个约束带有默认索引.1.主键primary Key:唯一索引.非空2.唯一Unique:唯一索引,可以是空值如果没有设定主键和唯一约束,表中不会有默认索引的. 建立主键/ ...
- Oracle 删除用户和表空间////Oracle创建删除用户、角色、表空间、导入导出、...命令总结/////Oracle数据库创建表空间及为用户指定表空间
Oracle 使用时间长了, 新增了许多user 和tablespace. 需要清理一下 对于单个user和tablespace 来说, 可以使用如下命令来完成. 步骤一: 删除user drop ...
- 数据库表的自增ID createDate和updateDate 用JPA注解代替触发器实现
对于数据库表的自增ID , createDate和updateDate 等字段,用JPA注解代替触发器实现,效率会高很多. 由于这些属性很多entity都有 可以写成两个基本entity :BaseE ...
- oracle创建表空间自增空间管理
表空间(tablespace).段(segment).区(extent).块(block),这些都是oracle数据库在数据文件中组织数据的基本单元 1.创建表空间create tablespace ...
- oracle数据库创建表
实际工作中,在数据库中创建表是经常会用到的.我们今天呢?主要给大家来分享一下在数据库如何通过sql语句去创建表.其实,创建表很简单,只需要把数据库的数据类型和约束搞清楚就可以了,其他的就好说了.接下来 ...
随机推荐
- dml语句和ddl语句 区别
delete from user删除所有记录,属于dml语句,一条记录一条记录删除.事务可以作用在dml语句上的 truncate table user;删除所有记录,属于ddl语句,将表删除,然后重 ...
- MySQL 的 DISTINCT 应用于2列时
SELECT DISTINCT vend_id告诉MySQL只返回不同(唯一)的 vend_id行,也就是在vend_id 有重复的行中,只保留一行,其他的不作输出.比如我创建了如下的student表 ...
- R语言矩阵栅格显示矩阵颜色显示
效果如下:
- leecode第八十八题(合并两个有序数组)
class Solution { public: void merge(vector<int>& nums1, int m, vector<int>& nums ...
- 基于虹软sdk,java实现人脸识别(demo)
## 开发环境准备:###开发使用到的软件和工具:* Jdk8.mysql5.7.libarcsoft_face.dll(so).libarcsoft_face_engine.dll(so).liba ...
- python测试相关小问题
实操中的小问题 pycharm 一次运行多个test configuration 项目分层,分包之后,tests也分到不同层的不同project里了,tests也分开. 为了防止基层模块改动,影响上层 ...
- 响应式图片 (responsive image)
更新 : 2019-02-21 除了写 srcset sizes 还有一种 x1, x2, x3, x4 的写法. 我们对比一下 假设 pc 希望是 1000w mobile 希望是 300w siz ...
- 如何解决failed to load the jni shared library问题
如何解决failed to load the jni shared library问题 首先,我们来查看JDK是多少位的,在搜索框中输入cmd,然后打开命令行窗口. 在命令行中输入java -ve ...
- Java从内存流中读取byte数组
Java中通过servlet接收二进制数据,然后将二进制数据流读取为byte数组.开始使用:byte[] bs = new byte[request.getContentLength()];reque ...
- Maven报错Please ensure you are using JDK 1.4 or above and not a JRE解决方法!
https://www.cnblogs.com/shihua513/p/6163682.html 在eclipse下用maven编译时,很有可能出现以下错误: Please ensure you ar ...