`
liuxinglanyue
  • 浏览: 562611 次
  • 性别: 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自动增长了,此问题至此解决!

分享到:
评论

相关推荐

    设定Access数据库自增长字段初始值

    ### 设定Access数据库自增长字段初始值 在Microsoft Access数据库管理系统中,自增长字段是一种非常实用的功能,尤其在创建主键或唯一标识符时极为常见。本文将详细介绍如何设置Access数据库中的自增长字段初始值,...

    OracleID自增长

    本文详细介绍了如何在Oracle数据库中实现ID自增长功能,包括创建表、创建序列、创建触发器等步骤。通过这种方式,可以有效地提高数据管理和维护的效率。对于需要频繁处理大量数据的应用来说,这种方法非常实用且有效...

    设置db2 字段自增长

    在数据库管理中,自增长字段是一种常见的需求,尤其是在设计主键或唯一标识符时。DB2作为一种强大的关系型数据库管理系统,提供了多种方法来实现字段的自增长功能。本文将详细介绍如何在DB2中通过触发器及`GENERATED...

    mysql实现char类型主键自增长

    在MySQL数据库管理中,自增长主键是一种常见的设计模式,主要用于自动为每一行记录生成一个唯一的标识符。然而,这种自增长通常与整型数据类型(如INT)关联,而较少见于字符型数据(如CHAR)。本文将深入探讨如何在...

    sqlserver自动增长字段设置方法.rar

    在SQL Server数据库管理系统中,自动增长(Identity)字段是一个非常重要的特性,主要用于为表中的记录生成唯一的标识符,通常作为主键使用。本教程将详细解释如何在SQL Server中设置和管理自动增长字段。 首先,...

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

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

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

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

    oracle字段自增长

    Oracle 字段自增长是指在 Oracle 数据库中,通过创建序列和触发器来实现字段的自动增长功能。在 Java 编程过程中,这种机制可以用来生成唯一的序号,例如订单号、流水号等。 在 Oracle 10g 中,实现字段自增长需要...

    解决sqlserver 2012 中ID 自动增长 1000的问题.zip

    在SQL Server 2012中,自增ID(Identity列)是数据库设计中的常见元素,用于自动为新插入的行生成唯一的标识符。然而,有时可能会遇到自增ID值跳过特定数值,例如从一个ID跳到1000或2000的情况。这种问题通常是由于...

    USER数据库程序代码

    8. 扩展性:随着用户数量的增长,数据库系统需要能够水平扩展(添加更多服务器)或垂直扩展(升级硬件资源)。 9. 数据库维护:包括定期的数据库清理、重建索引、统计信息更新等,以保持数据库的最佳状态。 10. ...

    解决sqlserver 2012 重启服务ID自动增长1000的问题

    1. **定期备份**:定期进行完整数据库备份和事务日志备份,以防止数据丢失和异常ID增长。 2. **监控和维护**:定期监控SQL Server的运行状态,及时发现并解决可能导致服务不稳定的问题。 3. **硬件和网络稳定性**:...

    Oracle数据库创建表tuser设置主键自动增长

    ### Oracle数据库创建表tuser设置主键自动增长 在Oracle数据库中,创建一张包含自动增长主键的表是一项常见的需求。本文将详细介绍如何在Oracle环境中创建一个名为`tuser`的表,并实现其主键自动增长的功能。此外,...

    mysql 自增长 时间字段

    MySQL 自增长时间字段详解 MySQL 是一种广泛应用的关系型数据库管理系统,具有强大的数据存储和管理能力。在实际应用中,我们经常需要对数据进行自增长和时间戳记录,本文将详细介绍 MySQL 中的自增长和时间字段的...

    谷粒商城数据库创建表sql

    - detail_id:订单详情ID,主键,自增长 - oid:订单ID,外键 - gid:商品ID,外键 - quantity:购买数量 6. 支付表(Payments) - pid:支付ID,主键,自增长 - oid:订单ID,外键 - amount:支付金额 - ...

    oracle自动增长列

    在Oracle数据库中,实现自动增长列的功能主要依赖于`SEQUENCE`对象。通过创建一个序列(SEQUENCE),可以方便地为表中的某列自动生成唯一的值,这对于主键或者需要唯一标识符的场景非常有用。 #### 1. SEQUENCE概述...

    MongoDB的_id自动增长.pdf

    在SQL数据库中,通常存在自动增长的主键概念,例如MySQL中的`AUTO_INCREMENT`字段,它能确保每行记录的主键值独一无二并自动递增。然而,MongoDB并没有内置这样的功能,其默认的`_id`字段是一个由12字节组成的唯一...

    oracle触发器实现主键自动增长

    在Oracle数据库中,实现主键自动增长是一种常见的需求,尤其在设计高并发、大数据量的系统时,确保每个记录都有一个唯一且连续的标识符变得至关重要。本文将深入探讨如何利用Oracle触发器来实现这一功能,同时也会...

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

    Oracle 和 MySQL 在处理自动增长列(通常用于主键ID)方面有着显著的差异。自动增长列主要用于确保每个新插入的行都有一个唯一的标识符。在MySQL中,这个过程相对直接,而在Oracle中则需要借助序列(sequence)来实现...

    SQL Server 打开或关闭自增长

    然而,有时在特定情况下,我们可能需要在插入数据时指定自增长列的特定值,而不是让数据库自动分配。这就涉及到了如何打开或关闭自增长的功能。 `SET IDENTITY_INSERT` 是SQL Server中用于控制是否允许在插入数据时...

    oracle设置主外键即主键序列自动增长

    由于 `groupinfo_id` 是主键并启用了自动增长,因此在插入数据时不需要指定 `groupinfo_id` 的值,系统会自动为其分配一个唯一的ID。 ##### 2. 查询数据 ```sql SELECT * FROM groupinfo; ``` 执行查询后,可以查看...

Global site tag (gtag.js) - Google Analytics