oracle数据库,主键设置为ID,插入语句时,如何自动生成ID并让它顺序增加呢

oracle数据库,主键设置为ID,插入语句时,如何自动生成ID并让它顺序增加呢,第1张

使用oracle数据库中的关键字sequence来实现目的。

//创建mySeq

create sequence mySeq

start with 1

increment by 2

maxvalue 40

minvalue 1

cycle

//创建用户表

create table USER

(

Id int,

CompName varchar2(20)

)

插入语句可以这样写:

insert into USER values(mySeq.nextVal,'AA')

这样的话每次插入的ID就是自动递增的

扩展资料:

sequence用法:

create sequence <序列名称>

start with <起始数>

increment by <增长量>

[maxvalue 值]

[minvalue 值]

[cycle 当到达最大值的时候,将继续从头开始]

[Nocycle -- 一直累加,不循环]

[Cache ]

参考资料:百度百科-oraclesequence

先在数据库中新增一个序列,如在oracle数据库中执行如下语句新增一个名为test_seq的序列

CREATE

SEQUENCE

test_seq

INCREMENT

BY

1

--

每次加几个

START

WITH

1

--

从1开始计数

NOMAXVALUE

--

不设置最大值

NOCYCLE

--

一直累加,不循环

以后你往某表中插入数据时,直接用如下形式就行了,比如:

insert

into

test_table

VALUES

(test_seq.nextval,

......)

test_table的第一列就是你要自增的那个id,test_seq.nextval就是从新增的序列中取出下一个值,每取一次都会+1.

当然,一般来说不同的表需使用不同的序列,这样它们的id可以保证连续

在创建表的时候可以设置,方法如下,用一下sql语句。

create table tableName(

id int identity(1,1) primary key,

data varchar(50))

解释:其中identity(1,1)代表自增,第一个1代表从1开始计数,第二个1代表每次增长1。

扩展资料:

SQL 全名是结构化查询语言[1](Structured Query Language),是用于数据库中的标准数据查询语言,IBM 公司最早使用在其开发的数据库系统中。1986年10月,美国国家标准学会(ANSI) 对 SQL 进行规范后,以此作为关系式数据库管理系统的标准语言 (ANSI X3. 135-1986),1987年得到国际标准组织的支持下成为国际标准。不过各种通行的数据库系统在其实践过程中都对 SQL 规范作了某些编改和扩充。所以,实际上不同数据库系统之间的SQL不能完全相互通用。

参考资料:

百科-SQL语言


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6780928.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-28
下一篇 2023-03-28

发表评论

登录后才能评论

评论列表(0条)

保存