欢迎来到天天文库
浏览记录
ID:26845010
大小:96.00 KB
页数:9页
时间:2018-11-29
《第15章数据库访问.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、第15章数据库访问数据库的使用越来越广泛。从个体业者到大型公司的人事系统,都需要使用数据库来保存和维护应用程序使用和处理的所有记录。VisualC++提供了多种多样的数据库访问技术,包括ODBC、DAO、OLEDB、ADO等,这些技术各有自己的特点,它们提供了简单、灵活、访问速度快、可扩展性好的开发技术,本章将介绍这几种访问技术。15.1数据库介绍数据库顾名思义是存储和管理大量数据的地方,广义的数据就是现在常说的信息。随着社会的进步,信息已经成为重要的资源,因此,数据库技术已经成为计算机技术非常重要的分支。现在几乎所有大型的应用程
2、序都是基于数据库的,所以用VisualC++6.0进行数据库编程已经成为MFC程序员的必备技能。15.1.1关系数据库系统提到数据库就不得不讲到数据库管理系统(DBMS)。DBMS是用于描述、管理和维护数据库的程序系统,是数据库系统的核心组成部分。它建立在操作系统的基础上,对数据库进行同意管理和控制。其主要功能有:1)描述数据库。描述数据库的逻辑结构、存储结构、语义信息和保密要求等。2)管理数据库。控制整个数据库系统的运行,控制用户的并发性访问,检验数据的安全、保密与完整性,执行数据检索、插入、删除和修改等操作。3)维护数据库。控
3、制数据库初始数据的装入、记录工作日志,监视数据库性能,修改更新数据库,重新组织数据库,恢复出现故障的数据库。4)数据通信。组织数据的传输。DBMS主要有3种类型:层次数据库系统、网状数据库系统和关系数据库系统。其中最常用的当属关系数据库系统。关系数据库是目前应用最为广泛的数据库系统,它提供了一种简单灵活的数据结构,采用关系模型来存储数据。关系模型基于关系代数和关系理论,在早期,它们使用相同的术语来描述这种数据结构上的操作。例如关系理论中使用“关系”表示表、“原组”表示行、“属性”表示表中的列。关系模型包括数据结构,在这些数据结构上
4、管理数据的操作和一些完整性规则,用来保证数据符合定义在系统中的业务规则。关系数据库的基本概念是表(table)。表是一个二维对象,用来存储一件有实际意义的事物信息,这种表用人们熟知的列(域)和行(记录)来给出特定项目的信息。例如,若有一个数据库包含公司的职员信息,则它可以用专用表把数据分成部门名称、年龄、职员编号、职员姓名等,如表15-01所示。职员姓名年龄职员编号部门名称张三25KF01001开发部李四26SJ02001市场部王五27CW01001财务部表15-01关系数据库中的一张表表中每一列称为一个域或一个字段(field)
5、,如上表中的部门名称、年龄等。每一个字段都有相应的描述信息,如数据类型、数据宽度等。表中每一行称为一条记录(record),每条记录存储了特定个体的全部信息。例如张三,年龄为25,职员编号为KF01001,部门名称为开发部等。表是由一系列记录组成,用户可在一个域和一个记录的交点获取一个特定的值。用户可以为一个或几个域建立索引(index)来提高访问数据的速度。一个表可以有一个或几个索引,当然也可以不建立索引。当一个表很庞大时,建立主关键字(有时也称主键,primarykey)索引是很有效的。一个主关键字索引里面包含了主关键字的每一
6、个域的条目,这些条目不可重复。用户只能用主关键字来连接两个表。关系数据库的另一个重要概念是表之间的联系。这些联系在数据结构中并没有硬编码,也就是说,数据中不存在从一个表指向另一个表的指针。这样就提高了数据库管理系统的灵活性。关系数据库管理系统具有以下特征:1)以表的形式表示数据。2)表间联系不是硬编码的。3)不需要用户理解它的物理实现。4)用系统表来提供其本身的内容和结构。5)通过SQL命令来操作。6)支持空值(NULL)的概念。15.1.2结构化查询语言结构化查询语言(StructureQueryLanguage)是基于关系模型
7、的数据库查询语言,它是一种非过程化的程序语言,也就是说,没有必要写出将如何做某事情,只需写出做到什么就可以了。写出的语句可以看作是一个问题,称为“查询”,针对这个查询,得到所需要的查询结果。下面是一个例子:Selectnamefromemployeewhereage=25这个查询的意思为,从表employee中将年龄为25岁的职员的姓名提取出来。把SQL描述为子语言更适当一些,因为它没有任何屏幕处理或用户输入/输出的能力。它的主要目的是为了提供访问数据库的标准方法,而不管数据库应用的其余部分是用什么语言编写的。它既是为数据库的交互
8、式查询而设计的,同时也可以在过程化语言编写的数据库应用程序中使用。关于结构化查询语言的具体细节请参见相关的书籍,本章不做具体介绍。15.2数据库访问技术介绍VisualC++提供了多种多样的数据库访问技术——ODBC、DAO、OLEDB、ADO等。
此文档下载收益归作者所有