姚万鹏
摘 要
在信息技术发展迅速的时代,数据库技术的应用也日益广泛。鉴于此,本文主要对数据库设计应遵循的原则、数据编程及实践情况等相关问题进行了分析,以期为同行提供参考或借鉴。
【关键词】软件开发 数据库设计 理论 实践
在数据管理活动中,数据库是最新的技术之一,具有冗余度最低、结构优化、方便补充及数据独立等优点,被认为是大多数信息系统开发的前提,故在很多领域中得到了广泛应用。
1 数据库设计的遵循原则
1.1 规范命名
不同的数据库产品,其命名也应各不相同。设计时,应使用大小写字母的标识方法,包括后台程序代码,且命名字符应不超过30个。
1.2 避免数据冗余
尽可能减少数据库中的冗余数据,且要避免出现重复字段,以免操作时造成数据不一致。
1.3 对数据库性能进行调整
在设计数据库时,设计人员通常会使用这两种方法:
1.3.1 物理设计数据库
主要是对内部物理结构进行调整,然后选择最优的存取路径,加快访问速度,进一步提高空间利用率。
1.3.2 逻辑设计数库
通过对数据库性能进作出调整,使连接运算进一步减少,有利于保持各个关系数量的合理水平,最终达到提高存取效率的效果。
1.4 禁用游标
除非是个别要求,否则一般情况需禁用游标。若使用游标集合大数据,程序极可能发生死机、等待的情况。若要使用游标,可考虑建立临时表,在表内输入需要的数据后再行游标处理,这可有效提升游标性能。
1.5 一致性与完整性
为了保证数据库中数据的一致性与完整性,可通过使用主键与外键、check达到这个目标。
2 数据库编程
标准SQL属于一种非过程化查询语言,功能丰富、操作统一、使用简单。以下主要对应用系统中嵌入式ODBC、SQL及PL/SQL编程的相关问题进行分析。
2.1 嵌入式SQL
在程序语言中嵌入SQL语句,即为嵌入式SQL。比如,Java、C及C++称为宿主语言,也称主语言。
2.2 存储过程
基本的SQL属于高度非过程化语言。PL/SQL程序以块为基本结构,块和块之间可相互嵌套,每个块能完成一个逻辑操作。PL/SQL具有过程化语句功能,可起到扩展SQL的作用。存储主要包括创建、执行与删除这几个环节。存储过程进行编译与优化后,可存储于数据库服务器,达到高效运行的效果,不但使客户机与服务器间的通信量下降,且有利于控制和维护。
2.3 ODBC编程
根据ODBC开发的应用系统,可分为用户应用程序、数据库驱动程序、驱动程序管理器及数据源这几个部分。该类应用系统,主要的工作流程为:
2.3.1 数据源的配置
对数据源的配置,常用方法有两种:
(1)使用数据源管理工具完成配置;
(2)利用ConfigDsn函数修改、删除或增加数据源。
2.3.2 对环境进行初始化处理
Driver Manager主要用于控制与配置环境属性,并未关联具体驱动程序。当应用程序调用连接函数,并连接某个数据源后,才可调用选择的驱动程序中的的SQLAlloc Handle,实现对环境句柄数据结构的真正分配。
2.3.3 建立连接
与数据源连接后,可实现对应用程序与连接句病的分配,并需要在已经设置好的用户名ID、数据源名称与口令中输入参数。
2.3.4 语句句柄的分配
在对SQL所有语句进行处理前,应用程序需先分配有1个语句句柄。在语句句柄中,必须包含真实的SQL语句、输出结果集等重要信息。在后期执行的函数中,要求语句句柄为必要性输入参数。
2.3.5 SQL语句的执行
应用程序对SQL语句的处理方式,主要有2种,分别是直接执行、预处理。如果SQL含参数,可对SQL Bind Parameter进行调用,并绑定至应用程序变量。
2.3.6 对结果集的处理
2.3.7 中止处理
3 实践要点分析
进行数据库设计。最终目的是为用户与操作系统营造高效的运行环境。数据库设计,从规范角度来说可分成6个阶段。
3.1 需求分析
这是数据库设计第一阶段,也是最重要阶段。进行数据库设计,首要工作是对用户需求有较精准的了解。在该阶段,需进行分析的需求主要包括这些,如信息需求、安全性与完整性需求、处理要求。这些需求反映的是用户基本需求,通过它们可获取到一些有用的数据信息,如数据定义、类型等。
3.2 概念结构的设计
该环节也是数据库设计的关键部分。其中,最重要的则是找出数据间的内在关联,并对用户需求进行归纳与总结,形成一个抽象的概念模型。在实践过程中,以视图集成设计、集中式模式设计这两种方法为主。前者主要是先分解一个单位,再对局部各个部分进行分解,最后建立起每个部分视图,在视图基础上集成。后者是以需求为基础,由一个统一机构或者操作人员设计出综合的全局模式,多适用于复杂程度较低的企事业单位软件产品的设计中。
3.3 逻辑结构设计
在该环节中,对外模式关系的设计十分重要。具体而言,主要包括三个方面的内容:
(1)数据具有逻辑独立性时,软件成品受逻辑模式的影响较小。
(2)可满足用户对不同数据的需求。因为大多数据库结构巨大,当发送用户需求时,可自动将用户不需要的模式屏蔽,仅呈现需要的模式。
(3)应融入保密功能。当用户获取数据时,不相关数据会被屏蔽,用户只能看到需要的数据。
3.4 物理设计
该环节的工作内容主要是调整数据库内的物理结构,并合理选择存储路径,多采用集簇、索引设计与分区设计的方式。
3.5 验证设计
在设计或建立每一个数据库时,往往需要进行反复验证。假如数据库内步骤或者数据被损坏或者出错,必须及时校正,并尽快恢复正常。
3.6 软件运行与维护
这是最后一个环节。当数据正式运行后,应经常对其进行调整与维护。
4 小结
由上述可知,软件开发的数据库设计是一项非常重要的工作,与整个系统后期的稳定运行密切相关。在进行数据库设计时,应遵循相关原则,并在对各种关系数据库进行有效处理,以提高数据库设计与应用的合理性。
参考文献
[1]贾荣秀,周杨.软件开发中数据库设计理论的思考[J].信息与电脑,2016(09):119-120.
电子技术与软件工程2016年18期