更新oracle数据库表如何实现主键自增长
在数据库中实现主键自动增长有利于我们做数据插入操作,在SQL SERVER上创建表时可以在int类型的字段后加上identity(1,1),该字段就会从1开始,按照+1的方式自增,将这个字段设置为主键。MySql中可以使用“auto_increment”即可。而oralce实现该效果需要使用序列配合触发器使用。
下面是一个具体实例:
1.创建数据库表:
create table employee
(
EID INTEGER,
NAME varchar2(10),
SURNAME varchar2(10),
GENDER varchar2(10),
STATE varchar2(10),
BIRTHDAY date,
HIREDATE date,
DEPT varchar2(10),
SQLARY INTEGER
)
;
2.创建序列:
create sequence EID_AUTOINC
minvalue 1
maxvalue 9999
start with 57
increment by 1
nocache;
3.创建触发器:
CREATE OR REPLACE TRIGGER employee_EID --触发器名称
BEFORE INSERT ON employee --EMPLOYEE是表名
FOR EACH ROW
DECLARE
NEXTID NUMBER;
BEGIN
IF :NEW.EID IS NULL OR :NEW.EID=0 THEN --EID是列名
SELECT EID_AUTOINC.nextval --EID_AUTOINC是刚才创建的序列
INTO NEXTID
FROM DUAL;
:NEW.EID:=NEXTID;
END IF;
END employee_EID;
4.插入数据测试:
insert into employee
( name, surname, gender, state, birthday, hiredate, dept, sqlary)
values
( 'm', 'f', 'f', 'QQHE', to_date('1986-08-01','yyyy-mm-dd'), to_date('2010/08/24','yyyy-mm-dd'), 'C-center', '3500');
5.查询验证:
select * from employee
转载于:https://www.cnblogs.com/shiGuangShiYi/p/10117563.html
更新oracle数据库表如何实现主键自增长相关推荐
- Oracle数据库:约束条件:主键约束、唯一约束、检查约束、非空约束、外键约束、默认值填写
Oracle数据库:约束条件:主键约束.唯一约束.检查约束.非空约束.外键约束.默认值填写 2022找工作是学历.能力和运气的超强结合体,遇到寒冬,大厂不招人,可能很多算法学生都得去找开发,测开 测开 ...
- mysql主键干嘛的_数据库表中的主键有什么作用?
展开全部 数据库主键 主键:表中经常有一个列或多列的组合,其值能唯一地标识表中的每一行.这样e69da5e6ba9062616964757a686964616f31333365643534的一列或多列 ...
- oracle建表 和 设置主键自增
1.新建table CREATE TABLE ysb_log(id number(8) primary key not null ,tbdate varchar(50) NULL,tb_time va ...
- 数据库表可以没有主键吗?
又碰到有项目上的问这个问题 主键的作用: 1)保证实体的完整性; 2)加快数据库的操作速度 3)在表中添加新记录时,数据库会自动检查新记录的主键值,不允许该值与其他记录的主键值重复. 4) 数据库自动 ...
- Oracle建表不设主键,oracle建表,设置主键,修改属性等
--建表 create table book( book_id number(10), book_name varchar2(20), book_price number(10,2), book_au ...
- 怎么查看oracle数据库表的主键,Oracle中查看所有的表,用户表,列名,主键,外键...
在Oracle中查看所有的表: select * from tab/dba_tables/dba_objects/cat; 看用户建立的表 : select table_name from user_ ...
- oracle中的表怎样保存,怎样保存excel 表格数据库中-如何将excel表格更新oracle数据库中数据...
如何将excel表格更新oracle数据库中数据 这里以SQL SERVE2008为例.SQLSERVER2008有一个"数据导入导出功能",当然我们也可以打开数据库之后,在数据库 ...
- MYSQL学习笔记06:列属性[NULL,default,comment],主键,自增长,唯一键,数据库设计规范[范式(1NF,2NF,3NF),逆规范化],表关系[1V1,1VN,NVN]
列属性 列属性又称为字段属性. 在mysql中一共有6个属性:null,默认值,列描述,主键,唯一键和自增长. NULL属性 NULL属性代表字段为空. 如果对应的值为yes表示该字段允许为null, ...
- 2005数据库导入mysql没有主键_MSSQL2005数据库导入导出+带主键、自动增量、关系图、表架构等...
MSSQL2005数据库导入导出+带主键.自动增量.关系图.表架构等 关键词:mssql2005.导入导出 1.在本地安装Mssql Server 2005 2.接着安装SQLServer2005_X ...
最新文章
- 北理计算机考研机试,北理工计算机2000-2010考研机试题目c语言实现.doc
- videoleap怎么导出本地_视频号小视频怎么制作?(附工具软件)
- python图形化界面按钮_Python-PyQt5-图形可视化界面(3)--按钮--Qpushbutton
- 01.微服务系列介绍
- 计算1~n之间所有奇数之和_所有奇数长度子数组的和
- 图论 —— DAG 图的最长路
- qt4 mysql_qt4连接mysql_MySQL
- UE4 打包C++项目到win32平台报错 could not find mspdbcore.dll
- RocketMQ(十六)RocketMQ消息存储机制
- 开源免费财务软件中文版GnuCash
- Activity 生命周期详解与异常情况生命周期
- Helm-chart学习-简单介绍与使用
- 使用谷歌浏览器查看ws消息
- 蓝桥杯——大臣的旅费
- matlab绘制法线信息、矢量场
- vivado查看内部资源占用情况
- 第四节:逻辑控制【java】
- 基恩士编程c语言,基恩士xg7000系列.pdf
- Web安全 -- 信息收集(上)
- 王延炯_海量数据处理的架构与实践
热门文章
- OpenCV学习(4) Mat的基本操作(1)
- 12 个的优秀手机设计灵感
- 乐观锁和悲观锁的区别(最全面的分析)
- ABP理论学习之工作单元(Unit of Work)
- Theano - 循环
- “大型票务系统”和“实物电商系统”的数据库选型
- C笔记(2014-12备份)
- MDT2013折腾记-UDP端口冲突
- AssetManager asset使用
- [九度][何海涛] 数组中出现次数超过一半的数字