通行证: 用户 密码 域名空间  下载中心 社区论坛 信息公告 MY小屋
联系我们
设为首页
加入收藏

 

QQ,ASP,PHP,JSP,XML,SQL,.Net,编程 程序 网页图象 建站经验 私服
首页 | 新闻资讯 | 编程开发 | 网页设计 | 图形图象 | 网络媒体 | 网站模板 | 数 据 库 | 投稿
论坛 | 操作系统 | 系统优化 | 网络安全 | 黑客技术 | 硬件学堂 | 硬件报价 | 服 务 器 | 地图
专题 | 应用软件 | 聊天通讯 | Q Q 专栏 | 建站经验 | 在线工具 | 站长Club | 注 册 表 | 旧版
社会 | 游戏娱乐 | 设计欣赏 | 疑难解答 | 社区论坛 | 韩国素材 | 素材图库 | 广告服务 | 服务
当前位置:首页>>数 据 库>>Oracle>>正文 新版上线![旧版]
注:打开慢时请稍等

PL/SQL序列

http://www.iyit.net  日期:2006-5-30 11:56:19  来源:网络转载   点击:
参加讨论】PL/SQL序列:


 
    序列是Oracle 9i提供的用于按照设定的规则自动产生数据的方案对象。在某些数据表的结构中,有些字段需要这种特性。比如,对于某个学生数据表的学号关键字段,用户可以希望在录入数据时,能够自动在上一个记录的学号字段上自动加1等。由于Oracle 9i提供的16种基本数据类型并没有这样的功能,可以通过序列方案对象来实现。

序列的创建

    下面介绍在【企业管理器】中如何创建序列。
    (1)在【企业管理器】中选择【myoracle.mynet】/【方案】/【序列】选项,单击鼠标右键,在出现的快捷菜单里选择【创建】选项,如图9.48所示。

    (2)出现如图9.49所示的创建序列的【一般信息】选项卡。
    在【名称】文本框里输入待定义的序列的名称“TEMPSEQUENCE”。
    在【方案】下拉列表框里选择序列所属的用户名“SCOTT”。
    序列【类型】参数有两个选项。若选择【升序】单选钮,则表示将创建从初始值向最大值递增的序列,这是创建序列时的默认设置;若选择【降序】单选钮,则表示将创建从初始值向最小值递减的序列。
    对【值】可以进行设置的参数如下。
    在【最小值】文本框里设置序列允许的最小值。创建序列时该字段最初为空。如果单击【创建】按钮时该字段为空,则对升序序列使用默认值 1,而对降序序列使用默认值 -1026。
    在【最大值】文本框里设置序列允许的最大值。创建序列时该字段最初为空。如果单击【创建】按钮后该字段为空,则将对升序序列使用默认值 1027,而对降序序列使用默认值-1。
    在【时间间隔】文本框里设置递增序列递增的间隔数值(升序序列)或递减序列递减的间隔数值(降序序列)。创建序列时该字段最初为空,如果单击【创建】按钮后该字段为空,将使用默认值1,该字段只能为正整数。
    在【初始值】文本框里设置序列的起始值。如果单击【创建】按钮后该字段为空,对升序序列将使用该序列默认的最小值,对降序序列将使用该序列默认的最大值。
    对【选项】可以设置的参数如下。
    若选择【循环值】复选框,则表示指定在达到序列最小值或最大值之后,序列应继续生成值。对升序序列来说,在达到最大值后将生成最小值。对降序序列来说,在达到最小值后将生成最大值。如果未选择该复选框,序列将在达到最小值或最大值后停止生成任何值。默认情况下是未选择状态。
    若选择【排序值】复选框,则指定序列号要按请求次序生成,默认情况下是未选择状态。
    在【高速缓存】中设置由数据库预分配并存储的值的数目参数。若选择【默认值】单选钮,则表示将设置默认值为 20,默认情况下选择此选项;若选择【无高速缓存】单选钮,则表示指定不预分配序列值;若选择【大小】单选钮,则表示在文本框里输入可接受的值,最小值为2,对循环序列来说,该值必须小于循环中值的个数。如果序列能够生成的值数的上限小于高速缓存大小,则高速缓存大小将自动改换为该上限数。
    完成设置后单击按钮。
    (3)成功创建序列后,出现如图9.50所示界面。单击“确定”按钮。

    (3)读者也可以在【SQLPlus Worksheet】中执行下列SQL程序创建序列。
    ―――――――――――――――――――――――――――――――――――――
    CREATE SEQUENCE "SCOTT"."TEMPSEQUENCE"
        INCREMENT BY 1 START WITH 1
        MAXVALUE 1.0E28 MINVALUE 1
        NOCYCLE CACHE 20 NOORDER
    ―――――――――――――――――――――――――――――――――――――
    【配套程序位置】:第9章\ createsequence.sql

序列的使用

    下面介绍在向数据表中插入数据时如何使用序列。
    (1)首先为实例建立一个数据表“SCOTT.SEQUENCE_TABLE”,为简化起见,该数据表仅包含一个类型为“NUMBER”的数据列“NO”。
    在如图9.51所示的创建表的【一般信息】选项卡中进行如下设置。
    在【名称】文本框中输入“SEQUENCE_TABLE”。
    在【方案】下拉列表框中选择“SCOTT”。
    在【表空间】下拉列表框中选择“USERS”。
    在【名称】单元格中输入“NO”,在【数据类型】下拉列表框单元格中选择“NUMBER”。
    完成设置后单击按钮。

    (2)读者也可以在【SQLPlus Worksheet】中执行下列SQL代码创建数据表“SCOTT.SEQUENCE_TABLE”。
    ―――――――――――――――――――――――――――――――――――――
    CREATE TABLE "SCOTT"."SEQUENCE_TABLE" ("NO" NUMBER(10) NOT NULL)
        TABLESPACE "USERS"
    ―――――――――――――――――――――――――――――――――――――
    【配套程序位置】:第9章\ createsequencetable.sql
    (3)在插入新的记录时,使用刚创建的“TEMPSEQUENCE”序列来自动产生“NO”数据列的值。在【SQLPlus Worksheet】里执行下面的SQL代码,执行的结果如图9.52所示。
    ―――――――――――――――――――――――――――――――――――――
    INSERT INTO SCOTT.SEQUENCE_TABLE(NO)
    VALUES(SCOTT.TEMPSEQUENCE.NEXTVAL);
    ―――――――――――――――――――――――――――――――――――――
    【配套程序位置】:第9章\ insertsequencetable.sql
    “SCOTT.TEMPSEQUENCE.NEXTVAL”表分配下一个惟一的、可用的序列号。
    执行“SCOTT.TEMPSEQUENCE.NEXTVAL”后,可以使用“SCOTT.TEMPSEQUENCE. CURRVAL”来标识上一个已经存储的序列值。
    (4)在【SQLPlus Worksheet】中可以执行查询数据表“SCOTT.SEQUENCE_TABLE”数据的语句。执行结果如图9.53所示,表明序列“SCOTT.SEQUENCE”产生的值已经成功录入数据表中。
    ―――――――――――――――――――――――――――――――――――――
    select * from scott.sequence_table;
    ―――――――――――――――――――――――――――――――――――――
    【配套程序位置】:第9章\ selectsequencetable.sql


序列的删除

    下面介绍在【企业管理器】中如何删除序列。
    (1)在创建好的序列“SEQUENCE1”上用单击鼠标右键,在出现的快捷菜单里选择【移去】选项,如图9.54所示。

    (2)出现如图9.55所示的【删除序列确认】界面,单击按钮。


编辑:黑鹰 [发送给好友] [打印本页] [关闭窗口] [返回顶部]
上一篇:PL/SQL过程
下一篇:PL/SQL异常处理
转载请注明来源:www.iyit.net
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。

 相关文章
MYSQL列类型参考 在Windows上安装MySQL 获得和安装MYSQL软件
安全网络访问mysql数据库服务器 更新MySQL数据库服务 运行多个MYSQL服务器
优化MYSQL服务器 使用MYSQL备份数据恢复 备份和拷贝MYSQL数据库
MYSQL日志文件维护 MYSQL用户帐号管理 MySQL服务器的启动和关闭
新的MySQL安装的安全性 MySQL重定位数据目录的内容 MySQL数据目录的位置
MySQL管理介绍 需要避免的MYSQL客户机程序设计错误 MYSQL图像数据的处理
对MYSQL查询中有疑问的数据进行编码 在MYSQL结果集上执行计算、 客户机程序5—MYSQL交互式查询程序
如何处理MYSQL查询 MYSQL客户机程序3—产生连接代码模块 MYSQL客户机程序2—增加错误检查
最新更新 热点排行 推荐新闻
脱机备份与恢复实战
Oracle 9i的备份和恢复机制
存储管理——深入Oracle 9i核心
如何执行实例程序
研究生管理信息系统的开发流程
MYSQL列类型参考
获得和安装samp_db样例数据库分发包
在Windows上安装MySQL
获得和安装MYSQL软件
安全网络访问mysql数据库服务器
更新MySQL数据库服务
运行多个MYSQL服务器
优化MYSQL服务器
使用MYSQL备份数据恢复
备份和拷贝MYSQL数据库
Oracle 9i锁
为数据库的表自动生成行号--为分页打好
Oracle中关于逻辑备份与恢复
脱机备份与恢复实战
Oracle 9i的备份和恢复机制
优秀公益广告作品欣赏(8)
java数据类型转换
Windows XP专业版IIS连接数的更改
优秀公益广告作品欣赏(7)
QQ最新版下载 2006 beta2 体验新感受 
Office2007简体中文版浮出水面 美图抢
WEB服务器配置全攻略(三)
优秀公益广告作品欣赏(6)
优秀公益广告作品欣赏(4)
优秀公益广告作品欣赏(1)
传统计算机病毒传播能力破坏性在提高
内存为何有“两面性”
AMD水货盒装CPU识别方法
IP地址资源2012年枯竭 部署IPv6很紧迫
古老问题有新解:世上先有鸡蛋后有鸡
Dreamweaver MX 2004从零开始(1)
利用CSS改善网站可访问性
如何让MM的脸通透可人
msn8.0下载
ASP 五大高效提速技巧
 友情链接
设置首 页 - 版权声明 - 广告服务 - 关于我们 - 联系我们 - 友情连接
Copyrights © 2004-2006 iYiT.Net All Rights Reserved.
网站合作、广告联系QQ:147007642、466949678
易特网络技术 点击这里给我发消息