欢迎您访问我爱IT技术网,今天小编为你分享的是oracle数据库教程:【利用序列减少软件测试开发技术之Oracle数据库开发工作量】,通过学习这些教程,你能够更深层次的掌握Oracle数据库!
利用序列减少软件测试开发技术之Oracle数据库开发工作量
利用序列减少软件 测试 开发 技术之Oracle数据库开发工作量 数据库设计 关键字:序列 Oracle 数据库 序列是Oracle数据库中一个命名的顺序编号生成器。这个编号生成器能够以串行方式生成一系列的顺序整数。这个特性在数据库开发的过程中,经常会遇到。如果没
利用序列减少软件测试开发技术之Oracle数据库开发工作量 数据库设计
关键字:序列 Oracle 数据库
序列是Oracle数据库中一个命名的顺序编号生成器。这个编号生成器能够以串行方式生成一系列的顺序整数。这个特性在数据库开发的过程中,经常会遇到。如果没有这个工具的话,那么只能够在前台应用程序控制。这不仅会增加应用系统的开发工作量,而且对于并发访问的情况难以控制。如多个用户同时新建一张单据时,就很难保证单据编号的唯一。故Oracle数据库的顺序编号生成器是数据库开发工程师的左膀右臂,具有很大的实用价值。具体来说,他可以解决用户的如下几个需求。
需求一:流水号的需求。
在信息化管理系统中,很多地方需要用到流水号。如有些企业物料编码是按照流水号来编写的。原材料按前后顺序用六个数字来表示,每次新建一个后都递增1。再如一个商场的前台订单管理系统,每张订单的变码原则可能就是按年月日+流水号的方式构成,每张销售订单一个编号。当天的销售订单从“000001”开始,一张销售订单一个编号,而且编号都是累加1的。而且商场可能有多个收款台,他们分布在商场的不同位置,甚至可能在不同的楼层。因此如果没有一个自动产生流水号的机制,就需要人工来完成这项工作。很明显这显然是不可能的。虽然也可以通过前台应用程序来控制。但是这也会增加代码的复杂程度,而且如果要实现多个收款台同时创建销售订单进行统一编号,则基本上不怎么可能。为此通过数据库据的顺序编号生成器来实现这个需求,使最合理的一个方式。
通过Oracle的序列功能,可以让数据库来自动地生成流水号。而且这个流水号即使在并发行操作下也不会重复,生成的速度比较快、使用方便。
需求二:利用序列当作主键、外键。
在信息化管理系统中,主键外键的应用很普遍。如在一个ERP系统的销售订单中,其订单ID就是一个主键,它唯一的标识了一张销售订单。这个字段对于终端用户来说没有实际的参考价值。但是对于应用程序或者数据库来说,这个字段则是非常关键的,因为他们就是根据这个ID来唯一的标识销售订单。通常情况下,只需要保证这个字段唯一即可,随便什么整数都可以。唯一性的要求听起来简单,但是如果要实现手工控制的话,具有一定的难度。最好的情况下,就是让系统来进行控制。
为此在Oracle数据库中就提出了序列这个功能。数据库管理员如果在数据库设计中,利用序列当作主键。让各个表都使用这个序列产生的整数作为主键,那么对于数据库的设计、编程、各种主外键关系建立都能够起到意想不到的作用。简单的说,就是序列可以成为数据库中相互独立表之间的黏合剂,把他们组合成一个统一的表结构。
以上两个只是从用户的角度来考虑序列的作用。那么下面如果成程序员的角度来考虑,会对序列提出哪些具体的要求呢?笔者总结了日常数据库开发过程中大家对序列提出的具体要求以及具体的解决方案,希望能够对大家有所帮助。
要求一:增量以10位单位递增。
通常情况下,序列是以1为单位递增的。如1001、1002、1003等等。但是有些时候,程序员希望这个增量以10(或者以任何一个整数)为单位递增。如在销售订单订单明细中,其各个项目就是以10为单位进行递增。这主要是为了后续的调整提供方便。不仅如此,在财务管理系统中也都有类似的要求。那么Oracle数据库的序列能否实现以10为单位或者以任何一个整数为递增单位呢?答案当然是肯定的。在创建序列的时候,默认情况下其递增单位为1。但是数据库管理员可以利用INCREMENT BY参数指定序列的增量,其默认值为1。如果程序员希望能够实现按10来递增的话,只要把这个参数设置为10即可。
这个参数不仅控制了递增的单位,而且还控制了递增的方向。即按从大到小递减还是按从小到大递增。如这个值设置为10,则其就是按10、20、30如此递增。如果这个数值设置为-10,其就是按10000(假设最大值为10000)、9990、99980等顺序递减。也就是说如果利用这个字段来做为表的关键字的话,那么这个关键字可以从大到小生成,也可以从小到大生成。
关于利用序列减少软件测试开发技术之Oracle数据库开发工作量的用户使用互动如下:
相关问题:oracle数据库管理培训
答:课程综述 本课程为管理工业界最先进的信息系统的数据库管理员开发能力,学员将学会备份和恢复Oracle数据库,动手实验将会给你带来真实技术环境中的体验,开发基本的网络管理技巧,使用Oracle恢复管理器简化职责。本课程将为Oracle数据库管理员关... >>详细
相关问题:服装ERP系统是怎么搭建测试环境的?开发C/S的的ERP...
答:windows2003/NT+oracle+IIS6.0 这个是B/S架构,而不是C/S架构 C/S架构的核心是需要客户端软件,至于语言和数据库采用你熟悉的就可以,如果企业规模不大,那么尽量采用SQL数据库,规模比较大,才使用oracle数据库 >>详细
相关问题:oracle 11g数据库什么时候出的
答:Oracle 11g是甲骨文公司在2007年年7月12日推出的最新数据库软件,Oracle 11g有400多项功能,经过了1500万个小时的测试,开发工作量达到了3.6万人/月。相对过往版本而言,Oracle 11g具有了与众不同的特性。 >>详细
- 软件测试开发技术之Oracle数据库维护的前瞻性_Ora
- Oracle9i 数据库设计指引全集_Oracle_领测软件测
- 数据库中Oracle索引的优化设计_Oracle_领测软件测
- Oracle数据库编写有效事务指导方针_Oracle_领测软
- oracle性能Statspack使用之命中率调整_Oracle_领
- Oracle数据库和JSP连接要注意的一些问题[1]_Oracl
- 巧用Oracle备份集在测试机上做不完全恢复[2]_Orac
- 软件测试开发技术Oracle数据块损坏及其恢复的总结
- 使用oracle sql loader批量导入数据_Oracle_领测
- Oracle数据库集中复制方法浅议_Oracle_领测软件测
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
