`

(转)数据库 序列的创建 删除

 
阅读更多

在开始讲解Oracle序列使用方法之前,先加一点关于Oracle client sqlplus的使用,就是如果执行多行语句的话一定要加“/”才能表示结束,并执行!本篇文章的主题是通过创建Oracle序列和触发器实现表的主键自增。

1.首先创建序列,Oracle序列的语法格式为:
CREATE SEQUENCE 序列名
[INCREMENT BY n]
[START WITH n]
[{MAXVALUE/ MINVALUE n|NOMAXVALUE}]
[{CYCLE|NOCYCLE}]
[{CACHE n|NOCACHE}];

1)INCREMENT BY用于定义序列的步长,如果省略,则默认为1,如果出现负值,则代表Oracle序列的值是按照此步长递减的。

2)START WITH 定义序列的初始值(即产生的第一个值),默认为1。

3)MAXVALUE 定义序列生成器能产生的最大值。选项NOMAXVALUE是默认选项,代表没有最大值定义,这时对于递增Oracle序列,系统能够产生的最大值是10的27次方;对于递减序列,最大值是-1。

4)MINVALUE定义序列生成器能产生的最小值。选项NOMAXVALUE是默认选项,代表没有最小值定义,这时对于递减序列,系统能够产生的最小值是?10的26次方;对于递增序列,最小值是1。

5)CYCLE和NOCYCLE 表示当序列生成器的值达到限制值后是否循环。CYCLE代表循环,NOCYCLE代表不循环。如果循环,则当递增序列达到最大值时,循环到最小值;对于递减序列达到最小值时,循环到最大值。如果不循环,达到限制值后,继续产生新值就会发生错误。

6)CACHE(缓冲)定义存放序列的内存块的大小,默认为20。NOCACHE表示不对序列进行内存缓冲。对序列进行内存缓冲,可以改善序列的性能。

2.删除Oracle序列的语法是DROP SEQUENCE 序列名;

假设有表TEST,其主键为TEST_ID
1)建立递增序列SEQ_TEST:
create sequence SEQ_TEST
increment by 1
start with 1
minvalue 1 nomaxvalue
nocylce

2)建立触发器,当有数据插入表TEST时,使用Oracle序列为其去的递增的主键值
create trigger TRG_TEST before insert on TEST
for each row
begin
select SEQ_TEST.nextval into :new.TEST_ID from dual;
end;

至此,创建完成!

当然也可以不使用触发器,而是在插入时在sql语句中调用序列,例如
insert into TEST values(SEQ_TEST.nextval, ……)

 

原帖地址:http://www.cnblogs.com/WangPB/archive/2010/07/13/1776766.html

分享到:
评论

相关推荐

    oracle序列创建、修改、删除

    最近项目中要用oracle中的序列相关的内容,本人对oracle是小白一个,没办法只能在网上找相关的资源,还好,发现了一些,感觉挺实用的,就分享给大家了,该资源是oracle序列的创建、修改、以及删除的相关操作,有用例...

    达梦数据库_SQL语言手册

    数据库、登录、用户、模式、基表、视图、索引、序列、全文索引、存储过程和触发器 的定义和删除语句,登录、基表、视图、仝文索引的修改语句,对象的更名语句; 査询(含全文检索)、插入、删除、修改语句; 数据库安全...

    2数据库设计规范.doc

    " " " " " 修改点说明的内容有如下几种:创建、修改(+修改说明)、删除(+删除说明) 目 录 1 编写目的 1 2 数据库策略 1 2.1 数据库对象长度策略 1 2.2 数据完整性策略 1 2.3 规范化设计与性能之间的权衡策略 1 ...

    8数据库设计规范.doc

    " " " " " 修改点说明的内容有如下几种:创建、修改(+修改说明)、删除(+删除说明) 目 录 1 编写目的 1 2 数据库策略 1 2.1 数据库对象长度策略 1 2.2 数据完整性策略 1 2.3 规范化设计与性能之间的权衡策略 1 ...

    数据库服务搭建及数据库安装

    本文档主要是数据库服务搭建包含...6.数据库的一些常规操作包含(创建用户、创建表空间、创建索引、授权、创建索引空间、创建序列、修改序列、删除序列) 希望可以跟大家多沟通交流学习。 建议大家可以上手进行操作

    删除oracle下当前用户创建的所有对象

    在PLSQL中用户登陆后,使用以上脚本一次性删除所有该用户创建的对象,包括表,视图,序列,触发器,存储过程等等,恢复到数据库刚刚创建的那个状态。

    Java数据库编程宝典3

    3.3.1 创建、取消、更改数据库和表 3.3.2 创建、更改和取消视图 3.4 数据处理语言 3.4.1 INSERT语句 3.4.2 UPDATE语句 3.4.3 DELETE语句 3.5 数据查询语言 3.5.1 SELECT语句 3.5.2 WHERE子句 3.5.3 SQL...

    Java数据库编程宝典2

    3.3.1 创建、取消、更改数据库和表 3.3.2 创建、更改和取消视图 3.4 数据处理语言 3.4.1 INSERT语句 3.4.2 UPDATE语句 3.4.3 DELETE语句 3.5 数据查询语言 3.5.1 SELECT语句 3.5.2 WHERE子句 3.5.3 SQL...

    Java数据库编程宝典1

    3.3.1 创建、取消、更改数据库和表 3.3.2 创建、更改和取消视图 3.4 数据处理语言 3.4.1 INSERT语句 3.4.2 UPDATE语句 3.4.3 DELETE语句 3.5 数据查询语言 3.5.1 SELECT语句 3.5.2 WHERE子句 3.5.3 SQL...

    数据库审计系统在医院HIS数据库中的应用.docx

    它可以监控和审计用户对数据库中的数据库表 、视图、序列、包、存储过程、函数、库、索引、同义词、快照、触发器等的创建、修改和删除等,分析的内容可以精确到SQL操作语句一级。它还可以根据设置的规则,智能的判断...

    4数据库设计规范.doc

    " " " " " 修改点说明的内容有如下几种:创建、修改(+修改说明)、删除(+删除说明) 目 录 1 编写目的 1 2 数据库策略 1 2.1 数据库对象长度策略 1 2.2 数据完整性策略 1 2.3 规范化设计与性能之间的权衡策略 1 ...

    H155-合集-大型数据库系统概论-实验.pptx

    使用手工方法创建、查看、修改和删除XSCJ数据库中的一个表空间。 3. 使用手工方法创建、查看、修改和删除XSCJ数据库中的一个段。 H155-合集-大型数据库系统概论-实验全文共24页,当前为第9页。 大型数据库概论 ...

    数据库安全审计系统.doc

    它可以监控和审计用户对数据库中的数据库表 、视图、序列、包、存储过程、函数、库、索引、同义词、快照、触发器等的创建、修 改和删除等,分析的内容可以精确到SQL操作语句一级。它还可以根据设置的规则,智能 的...

    Java数据库编程宝典4

    3.3.1 创建、取消、更改数据库和表 3.3.2 创建、更改和取消视图 3.4 数据处理语言 3.4.1 INSERT语句 3.4.2 UPDATE语句 3.4.3 DELETE语句 3.5 数据查询语言 3.5.1 SELECT语句 3.5.2 WHERE子句 3.5.3 SQL...

    触发器生成数据库表操作日志

    作为一名数据库管理员,你尽力以各部门熟知的不同格式,向各部门提供它们所需要的数据。你通常将MS Excel格式的数据递交到会计部门,或将数据以HTML报表的形式呈现给普通用户。你们的系统安全管理员们则习惯于用文本...

    Firebird数据库中文版

    把数据库从一个平台转到另一个平台,非常的容易,只要备份数据库,然后,再到另一个平台上恢复即可 可连接性: Firebird 支持一系列的连接方法,目前,可以通过原生的DELPHI,C++组件连接,也可以通过ODBC,JDBC,...

    oracle数据库dba管理手册

    1.10.2 创建数据库后修改 MAXDATAFILES 27 1.10.3 使用OEM 28 第2章 硬件配置研究 30 2.1 结构概述 30 2.2 独立主机 31 2.2.1 磁盘阵列独立主机 31 2.2.2 磁盘镜像独立主机 34 2.2.3 多数据库独立主机 35 2.3 网络...

    开源免费数据库管理工具 DBeaver Community Edition 21.0.5 中文.zip

    因此,它不会创建注册表项,您只需删除其包含的文件夹即可将其删除。 总结起来,在管理从简单到复杂的多个数据库连接,触发器,过程和视图以及执行SQL脚本时,DBeaver 被证明是一种稳定有效的解决方案。

    达梦数据库用户手册基础学习版.rar

    3.10.2 序列删除语句 136 3.11 管理 SQL 域 136 3.11.1 创建 DOMAIN 136 3.11.2 使用 DOMAIN 137 3.11.3 删除 DOMAIN 137 3.12 管理上下文 138 3.12.1 创建上下文 138 3.12.2 删除上下文 140 3.13 约束的...

Global site tag (gtag.js) - Google Analytics