`
liuxinglanyue
  • 浏览: 547367 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

数据库id自增长

阅读更多

1.创建序列

 

-- Create sequence 
create sequence INNERID
minvalue 1
maxvalue 99999999999999
start with 1
increment by 1
cache 20
order;

 

 

 

◆2.--INNERID.currval 指当前序列

--INNERID.nextval 指下一个序列

 

insert into admin values (INNERID.nextval,'a');
insert into admin values (INNERID.nextval,'b');
insert into admin values (INNERID.nextval,'c');
insert into admin values (INNERID.nextval,'d');
create table admin
(id varchar2(20),name varchar2(10));

 

--不断的插入序列的下一个值.

 

 

◆3.创建触发器(注:此处无法设置id的默认值为INNERID.nextval )

 

CREATE OR REPLACE TRIGGER admin_tg
--admin id 的触发器
BEFORE INSERT ON admin FOR EACH ROW
BEGIN
SELECT INNERID.NEXTVAL INTO :NEW.id FROM DUAL;
END;

测试语句如下:

 

insert into admin (username) values ( 'zdz');

成功插入数据,再查看数据,你可以发现id自动增长了,此问题至此解决!

分享到:
评论

相关推荐

    oracle数据库id为uuid类型时自动生成id

    oracle数据库id为uuid类型时自动生成id的工具类,不再依赖sequence自增长

    mysql实现char类型主键自增长

    mysql用触发器实现char类型主键自增长

    实现oracle数据库字段自增长(两种方式)

    程序猿都知道mysql等其他的数据库都有随着记录的插入而表ID会自动增长的功能,反而oracle却没有这一功能,下面通过两种方式来解决字段增长的功能,具体内容情况下文。 因为两种方式都需要通过创建序列来实现,这里先...

    Oracle与Mysql自动增长列(id)的区别

    这里所说的自动增长列,主要是指一个表中主键id的自动增长。 Oracle与Mysql不同,不能在CREATE建立表时设置自动增长列功能。 Oracle必须通过创建sequence序列来实现自动增加列的功能。 首先要建立序列(当然必须要先...

    USER数据库程序代码

    代码和表

    SQL Server 打开或关闭自增长

    其中id列是自曾列,如果我们要插入3 | c的话,如果没有打开自增列,肯定是插不进去的,这时候用这个函数就有作用了 代码如下:SET IDENTITY_INSERT [Recursive] ON   INSERT INTO [Recursive](id,text) VALUES(3,...

    oracle主键自动增长

    ysql等其他数据库中有随着记录的插入而表ID自动增长的功能,而oracle却没有这样的功能,但我们可以用序列和触发器来实现这样的功能.

    对有自增长字段的表导入数据注意事项

    您可能感兴趣的文章:SQL Server设置主键自增长列(使用sql语句实现)oracle中的ID号实现自增长的方法mysql修改自增长主键int类型为char类型示例自增长键列统计信息的处理方法实现oracle数据库字段自增长(两种方式)

    网狐游戏数据库文档

    自增长主键  UserID:使用该头像的用户的UserID  CustomFace:用户自定义头像(由程序转换为2进制保存)  InsertTime:用户上传该头像的时间  InsertAddr:用户上传该头像的IP地址  InsertMachine:用户...

    sql语句查询数据库中的表名/列名/主键/自动增长值实例

    sql语句查询数据库中的表名/列名/主键/自动增长值 —-查询数据库中用户创建的表 —-jsj01 为数据库名 select name tablename from jsj01..sysobjects where type=’U’ and name not in (‘dtproperties’) –查询...

    购物网站数据库设计.docx

    说明 Stid Int 主键,自动增长 商品类型编号 St name Varchar 商品类型名称 购物网站数据库设计全文共3页,当前为第1页。 购物网站数据库设计全文共3页,当前为第1页。 商品信息表(shopinfo) 字段名 数据类型 是否为...

    Oracle数据库表序列ID自增生成器

    Oracle数据库表序列ID自增生成器的功能是为数据库中的表添加序列和触发器,以便使数据表的主键ID能够随着记录的增加而自动增加。

    ID自增JAVA类方法

    ID自增的java类方法,不用数据库主键自增的可以考虑试试这个,自己定义方式

    D10固定资产管理系统数据库设计.doc

    用户表 tbl_user: "字段名 "列名 "数据类型 "是否允许为空 "是否为主键 "备注 " "主键 "use_id "Int "N "Y "自动增长 " "用户编号 "use _no "Int "N "N "自动增长,唯 " " " " " " "一性 " "用户名 "use _name ...

    图书管理系统数据库设计.xlsx

    "新媒体学院图书资料室管理系统 数据库设计",,,,,, admin表,,,,,, 字段名,类型,长度,约束,默认值,允许空,字段说明 id,int,,主键,,,自增长 username,varchar,20,,,,用户名 password,varchar,20,,,,密码 phone,varchar...

    美食数据库的设计.docx

    数据库设计 数据库是数据库应用程序的重要组成部分。... 表4-1 admin管理员信息表 列名 数据类型 长度 是否空 默认值 描述 Id int 4 否 自动增长1 管理员ID号,主键 AdminType Int 4 否 管理员级别编号 Admi

    oracle中的ID号实现自增长的方法

    序列(Sequence)是一种可以被多个用户使用的用于产生一系列唯一数字的数据库对象。序列定义存储在数据字典中,通过提供唯一数值的顺序表来简化程序设计工作,可以使用序列自动产生主键的键值。当一个序列第一次被...

    数据库操作语句大全(sql)

    数据库操作语句大全(sql) 一、基础 1、说明:创建数据库 CREATE DATABASE database-name 2、说明:删除数据库 drop database dbname 3、说明:备份sql server --- 创建 备份数据的 device USE master EXEC sp_...

    oracle 创建字段自增长实现方式

    mysql等其他数据库中有随着记录的插入而表ID自动增长的功能,而oracle却没有这样的功能,我们有以下两种方式可以解决字段自增长的功能。  因为两种方式都需要通过创建序列来实现,这里先给出序列的创建方式。 ...

    飞机订票系统数据库表.docx

    0 主键,自增长 user_id Varchar2(30) 用户id 0 外键(普通用户) op_type Varchar2(40) 操作类型 0 订票,退票,改签 ticket_id Varchar2(40) 机票编号 0 外键(票务信息) time Varchar2(10) 时间 0

Global site tag (gtag.js) - Google Analytics