勇敢心资源网

当前位置:首页 > 百科 / 正文

资料库程式

(2020-02-05 13:58:07) 百科
资料库程式

资料库程式

资料库是指长期存储在计算机内有组织的、可共享的数据集合。资料库中的数据按一定的数据模型组织、描述和存储,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。资料库程式是指管理资料库,以及对数据进行操作的程式。资料库程式一般可以分为库函式和自定义程式。

基本介绍

  • 中文名:资料库程式
  • 外文名:Database Program
  • 学科:计算机
  • 定义:对数据进行操作的程式
  • 有关术语:资料库
  • 领域:资料库

介绍

资料库程式是指管理资料库,以及对数据进行操作的程式。资料库程式设计方向一般与资料库研究领域有关,不同领域资料库程式实现功能的侧重点不同。资料库程式设计步骤和程式设计步骤差不多:(1) 确定要解决的问题。根据问题所提出的要求,首先弄清要输入、输出的信息。(2)算法设计。选择解决问题的算法,即考虑对数据进行一些什幺基本操作及处理这些操作的合适的顺序。(3)框图设计或模组设计。(4)编写程式。根据已选定的算法用某种语言写出实现此算法的完整程式。(5)检验、调试,这个过程要反覆进行,直至程式完全正确。(6)编写程式使用说明书。

範围

当前,资料库研究的範围有以下三个领域。
资料库管理系统软体的研製
资料库管理系统(DBMS)是资料库系统的基础。DBMS的研製包括研製DBMS本身及以DBMS为核心的一组相互联繫的软体系统。研製的目标是扩大功能、提高性能和提高用户的生产率。
资料库设计
资料库设计的主要任务是在DBMS的支持下,按照套用的要求,为某一部门或组织设计一个结构合理、使用方便、效率较高的资料库及其套用系统。其中主要的研究方向包括资料库设计方法、设计工具和设计理论的研究,数据模型和数据建模的研究,计算机辅助资料库设计方法及其软体系统的研究,资料库设计规範和标準的研究等。
资料库理论
资料库理论的研究主要集中于关係的规範化理论、关係数据理论等。近年来,随着人工智慧与资料库理论的结合及并行计算机的发展,资料库逻辑演绎和知识推理、并行算法等理论研究,以及演绎资料库系统、知识库系统和数据仓库的研製都已成为新的研究方向。

库函式

库函式(Library function)是把函式放到库里,供别人使用的一种方式。.方法是把一些常用到的函式编完放到一个档案里,供不同的人进行调用。调用的时候把它所在的档案名称用#include<>加到里面就可以了。一般是放到lib档案里的。常见库函式如下(注:例子使用的是SQL语言):
AVG 返回指定组中的平均值,空值被忽略。
例:select prd_no,avg(qty) from sales group by prd_no2. COUNT 返回指定组中项目的数量。
例:select count(prd_no) from sales3. MAX 返回指定数据的最大值。例:select prd_no,max(qty) from sales group by prd_no4. MIN 返回指定数据的最小值。
例:select prd_no,min(qty) from sales group by prd_no5. SUM 返回指定数据的和,只能用于数字列,空值被忽略。例:select prd_no,sum(qty) from sales group by prd_no6. COUNT_BIG 返回指定组中的项目数量,与COUNT函式不同的是COUNT_BIG返回bigint值,而COUNT返回的是int值。
例:select count_big(prd_no) from sales7. GROUPING 产生一个附加的列,当用CUBE或ROLLUP运算符添加行时,输出值为1.当所添加的行不是由CUBE或ROLLUP产生时,输出值为0。
例:select prd_no,sum(qty),grouping(prd_no) from sales group by prd_no with rollup8. BINARY_CHECKSUM 返回对表中的行或表达式列表计算的二进制校验值,用于检测表中行的更改。
例:select prd_no,binary_checksum(qty) from sales group by prd_no9. CHECKSUM_AGG 返回指定数据的校验值,空值被忽略。
例:select prd_no,checksum_agg(binary_checksum(*)) from sales group by prd_no10. CHECKSUM 返回在表的行上或在表达式列表上计算的校验值,用于生成哈希索引。
STDEV 返回给定表达式中所有值的统计标準偏差。
例:select stdev(prd_no) from sales12. STDEVP 返回给定表达式中的所有值的填充统计标準偏差。
例:select stdevp(prd_no) from sales13. VAR 返回给定表达式中所有值的统计方差。
例:select var(prd_no) from sales14. VARP 返回给定表达式中所有值的填充的统计方差。
例:select varp(prd_no) from sales有时候以上的聚合函式并不能符合我们数据处理的要求,我们也可以自定义聚合函式,来得到我们想要的结果。

设计概要

开发成功的资料库应用程式,不分大小,都牵涉到好几个步骤。需要仔细思考应用程式的结构,尤其是以下几点:
如何将应用程式数据 (通常是面向对象的) 映射至关係资料库
如何巧妙处理错误
如何提升性能与可伸缩性
一般资料库应用程式需要许多不同的SQL语句。由于SQL语句在应用程式内大致採用 相同执行模式,才得以简化众多语句的管理。图1显示与关係资料库系统互动时,数 据库应用程式是如何準备、执行,然后处理SQL语句。状态图分成11个步骤,其中有 4个步骤为选择性的。
以下是图1所示各步骤的详细说明:
1. 建立连线:每个成功资料库应用程式的第一步都是建立连线。客户端(即资料库应用程式)在这个步骤中实际连上资料库,传输SQL语句至资料库并把结果返回至 客户端。与客户端的物理连线可以通过LAN、WAN建立,甚至当资料库应用程式与伺服器都在同一台机器上运行时,也可以通过简单的逻辑连线回到客户端。有关连线建立的详细信息,请参阅本章稍后的 “打开资料库连线”。
2. 开始事务(选择性的):事务开始,使资料库改变失败时可以回滚或在改变成功时可以提交。有关资料库程式设计API的事务控制,请参阅本章稍后的“管理事务”。
3. 建立语句对象:大部分先进的资料库程式设计API都採取面向对象式,以对象表示 SQL语句。通常应用程式内执行的每个SQL语句各有一个语句对象。语句对象内有执行所需的状态信息,例如SQL语句本身及输入参数。
4. 使SQL与语句对象产生关联:创建语句对象后,需要为对象指派SQL语句。完成后,即可执行语句对象。
5. 绑定输入参数 (选择性的):把参数绑定至SQL语句内的占位符(placeholder)的 功能虽不属于ANSI SQL标準,但本书所收录的平台都有这项功能。如果SQL语 句包含输入参数的占位符,语句对象就需要与各输入参数相关的程式变数。如果 SQL语句并不包含输入参数,则可略过此步骤。当相同的SQL语句重複执行数次 时,输入参数有助于提升性能,因为伺服器只需在第一次执行前解析语句。另一个使用参数的理由,是要在SQL语句中 (如INSERT与UPDATE语句) 嵌入二进制 数据,例如BLOB数据。
6. 执行语句对象: 以SQL语句成功创建并初始化语句对象后,即可执行该对象。此 步骤在资料库伺服器上执行SQL语句。
7. 处理结果(选择性的): 资料库伺服器返回结果集后,应用程式即可处理结果。此 步骤是选择性的,因为插入或更新数据的语句通常不需要此步骤。
8. 重新执行:若因执行失败或在输入参数内输入不同数据值而需要重複执行相同语句 时,应用程式便重返步骤6。如果应用程式不需要重複执行相同的语句,则进行步 骤9。
9. 执行另一个SQL语句:如果应用程式需要执行不同的SQL语句并重複使用语句对 象,则应用程式可回到步骤4; 如果不是,则进行步骤10。
10. 结束事务 (选择性的): 假设事务于步骤2开始,现在便是提交或回滚事务的时候 了。如果回滚事务,则语句对象对资料库所做的一切改变都会从资料库中被移除。
11. 释放资源:成功执行语句并处理结果后需要释放客户端与伺服器端的资源,让其他应用程式使用。
声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:baisebaisebaise@yeah.net
搜索
随机推荐

勇敢心资源网|豫ICP备19027550号