数据库应用程序设计方法

上传人:宝路 文档编号:22513539 上传时间:2017-11-27 格式:DOC 页数:7 大小:113.12KB
返回 下载 相关 举报
数据库应用程序设计方法_第1页
第1页 / 共7页
数据库应用程序设计方法_第2页
第2页 / 共7页
数据库应用程序设计方法_第3页
第3页 / 共7页
数据库应用程序设计方法_第4页
第4页 / 共7页
数据库应用程序设计方法_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《数据库应用程序设计方法》由会员分享,可在线阅读,更多相关《数据库应用程序设计方法(7页珍藏版)》请在金锄头文库上搜索。

1、1Visual Basic 程序设计课程辅导第 7 章第 7 章 数据库应用程序设计方法本章以成绩查询系统为例,较系统地介绍了数据库应用程序的开发模式和基本方法。通过本章学习,你应该能够达到如下学习目标:1掌握 VB 数据库应用程序的基本框架,以及 SQL 操纵数据的方法,能够编写Insert、 Update、Delete 和 Select 语句,并将这些语句嵌入到 VB 程序中。2理解使用 VB 数据库引擎操纵数据库的方法,以及 VB 数据对象及数据库访问机制,能够运用 ADO 对象进行程序设计3了解使用 Excel 输出报表的方法。4了解“成绩查询”程序的设计过程,能够读懂并完善这类程序的

2、部分语句。一、相关知识数据库、数据库管理系统、数据库系统的概念在数据库领域中是比较常见的。所谓数据库是计算机内有组织、可共享的数据的集合。而数据库管理系统是用户与操作系统之间的数据管理软件,数据库在建立、运行和维护时由数据库管理系统统一管理、统一控制。在数据库管理系统之上有应用系统,例如用 VB 开发数据库应用程序,以供终端用户使用。因此,比较严格的说法是数据库系统由数据库、数据库管理系统、数据库应用系统、数据库管理员和用户构成。但有时数据库管理系统和数据库系统常常混用。1.关系数据库概念数据库根据数据组织方式的不同而有所不同,即数据模型不同,较常见的数据模型有层次模型、网状模型、关系模型。根

3、据数据模型的不同,所建立的数据库结构也不同。目前使用最普遍的是关系数据库。所谓关系数据库是把数据组成一张或多张二维表格,即关系表,多张彼此关联的表格群组形成数据库,即关系数据库。在关系数据库中,数据以数据二维表的形式存在,如表 7.1、7.2 所示。数据二维表(简称数据表)由行和列组成,数据表中每一行称为一个记录,每一列称为一个字段,如表 7.1 中有 4 条记录,每条记录包含 5 个字段:学号(Sno) ,姓名(Sname) ,性别(Sex) ,年龄(Sage) ,所在系(Sdept) 。关系模型要求每个字段数据类型相同,并且是不可再分的,如果某个字段能唯一地标识这条记录,则这个字段就被称为

4、主关键字或主码(Key) ,如上表的学号(Sno) 。表 7.1 学生基本情况表(Student)Sno Sname Sex Sage Sdept0001 王磊 男 19 计算机科学系0002 刘进 女 20 中文系0003 李波 男 21 土建系0004 张建国 女 20 计算机科学系表 7.2 选课表(sc)Sno Cno grade0001 001 820002 002 7620003 003 800004 002 95在关系数据库中,我们用到了数据库、数据表、字段、记录等概念,小结如下: 关系:从用户观点看,一个关系对应通常的一张二维表。 记录:二维表中的每一行数据为一个记录。如表 7

5、.1 有 4 条记录 字段:每一列称为一个字段,每个字段都有一个名称。如学生姓名是一个字段,它的名称是 Sname。 数据表:记录的集合构成一个二维表格,称为数据表。如表 7.1。 数据库:多个相关的数据表的集合,构成数据库,每个数据库都已文件的形式存储在磁盘上 主码:如果某个字段能够唯一地标识一条记录,则称此记录为主码,如表 7.1 中的学号(Sno) 。 索引:索引是对某字段的内容按大小进行排序,然后对该字段索引进行快速检索便可找到相应记录。2.数据库管理系统概念数据库管理系统(DBMS)是用户与操作系统之间的数据管理软件系统,对数据库的各种管理与操作都是由数据库管理系统进行的,用户在对数

6、据库进行操作时,只需向 DBMS 提出“需要做什么”的请求,不必了解“如何做” 。DBMS 根据用户的请求,完成对数据库的实际操作。主要包括:创建数据库中的各种对象,如创建新表、索引等;对数据表中的数据进行增加、修改和删除等;数据库的事务管理、并发控制、故障恢复、完整性控制及安全控制等。数据库管理系统与数据库是密不可分的,每一种数据库都由某一特定的数据库管理系统进行管理,所以数据库管理系统也常常被称为数据库系统。常用的数据库系统有Access、SQL Server 、Oracle 等。3.SQL 语言SQL 是结构化查询语言(Structure Query Language)的缩写。它是关系数

7、据库的标准语言,简捷易学,功能强大。它可以实现数据查询、数据更新等多种功能。(1)数据查询SQL 提供 SELECT 语句进行数据库的查询,其一般格式为:SELECT 字段列表 FROM 表名 WHERE 条件 GROUP BY 分组字段HAVING 分组条件 ORDER BY 字段说明如下: 字段列表:字段可以是一个字段,也可以是多个字段,若是多个字段,字段之间用逗号分隔,如果要选择某个表中的所有字段,可用“*”代替。 FROM 子句:用于指定一个或多个表,如果所选的字段来自不同的表,则字段名前应加表名前缀。 WHERE 子句:用于构造查询条件。 GROUP BY 与 HAVING 子句:共

8、同用于对结果集进行分组过滤处理。它能把在指定字段列表中有相同值的记录合并成一条记录。例 1.查询 student 表(表 7.1)中的所有学生的学号与姓名。分析:查询所有学生的学号与姓名,无查询条件。SQL 语句如下:3SELECT Sno,Sname FROM student查询结果如表 7.3 所示。表 7.3 查询结果Sno Sname0001 王磊0002 刘进0003 李波0004 张建国此操作在关系数据库中称投影操作,投影操作返回二维表格的若干列。例 2.查询 student 表中所有计算机科学系的学生。分析:应用 WHERE 子句构造查询条件,使其满足能够查询 Student 表

9、中所有计算机科学系的学生。SQL 语句如下:SELECT * FROM WHERE student.Sdept= 计算机科学系查询结果如表 7.4 所示。表 7.4 查询结果Sno Sname Sex Sage Sdept0001 王磊 男 19 计算机科学系0004 张建国 女 20 计算机科学系此操作在关系数据库中称选择操作,选择操作返回二维表格的若干行。例 3.查询选修了 002 号课程的学生姓名和成绩,并按由高到低排列。分析:学生姓名在表 student 中,成绩在表 sc 中,显然所需信息需要从两个表中获得。按分数由高到低排列需要用关键字 DESC,反之,用 ASC(默认) 。SQL

10、 语句如下:SELECT student.Sname,sc.gradeFROM student,scWHERE student.Sno=sc.Sno and sc.Cno= 002ORDER BY grade DESC查询结果如表 7.5 所示。表 7.5 查询结果Sname grade张建国 95刘进 76此操作在关系数据库中称连接操作,连接操作是通过某个关键字将两个表连接起来。本例中是通过 Sno 关键字将表 student 和 sc 连接起来。在 SELECT 语句中,特别要指明某个字段来源于哪个表,如 student.Sname 表示 Sname 这个字段来源于 student 表。(

11、2)数据更新SQL 中数据更新包括插入数据、修改数据和删除数据三种语句。插入数据语句格式为:4INSERT INTO 表名(属性列)VALUES(值列)例 4.在选课表中插入一条选课信息:学号为 0005 的学生选了 003 号课程,成绩为85。SQL 语句如下:INSERT INTO sc(Sno,Cno,grade)VALUES(0005, 003, 85)修改数据语句格式为:UPDATE 表名 SET 列名值, WHERE 条件注意:如果条件为空,则修改所有的字段。例 5.将学生表中学号为 0002 的学生名字改为赵月,所属系改为“电子信息工程系” 。SQL 语句如下:UPDATE st

12、udent SET Sname赵月, Sdept= 电子信息工程系WHERE Sno= 0002删除数据语句格式为:DELETE FROM 表名 WHERE 条件注意:如果条件为空,则删除所有的记录。例 6.删除学号为 0002 的同学选 002 号课的记录。SQL 语句如下:DELETE FROM sc WHERE sno= 0002and cno=002例 7.删除计算机科学系同学所有的选课记录。在选课表 sc 中,没有计算机科学系的信息,必须在 student 表中查询。这时需要用到谓词 IN 所带的子查询。SQL 语句如下:DELETE FROM sc WHERE sno IN(SEL

13、ECT Sno FROM student WHERE Sdept = 计算机科学系二、本章重要知识点1.三种数据库类型VB 将数据库分为三种类型:本地数据库、外部数据库、远程数据库 本地数据库:主要指 Microsoft Access 数据库。外部数据库:是指采用 ISAM 的数据库,如 dBase,Foxpro,Paradox,Excel 等。远程数据库:指 SQL Server Oracle DB2 等大型数据库。2.VB 数据库访问机制VB 通过数据引擎访问数据库数据引擎:数据库应用程序属于一种非常典型的前后台软件结构,前台是我们的 VB程序,后台则是数据库管理系统,如 SQI Serv

14、er。而前后台通信的主要机制称为数据库引擎。常用的数据库引擎有三种:Jet 引擎、ODBC、OLE DB。3.数据对象VB 采用面向对象技术,将三种数据库引擎封装成三种访问数据库的对象,即DAO、RDO、ADO。5DAO 对象:可以使用 Jet 引擎和 ODBC 两种方式访问数据库。RDO 对象:一般采用 ODBC 访问数据库。ADO 对象:主要采用 OLE DB 访问数据库,也支持 ODBC 访问,但需要经过 OLE DB 转接。4.ADO 对象模型ADO 是一种基本 OLE DB 的 模型。 ADO 对象模型共包含 7 个对象。它们是Connection、Command、Recordset

15、、Field、Parameter、Property 和 Error。其中最常用的是前 4 个对象。5. 数据库应用程序的大致框架将 SQL 语句嵌入到 VB 语言中,采用 ADO 数据对象模型开发数据库应用程序。(1) 连接后台数据库 在 VB 应用程序中主要用 Connection 对象连接后台数据库,基本方法是: 首先声明并创建对象Dim ADOcn As Connection 声明对象Set ADOcn = New Connection 创建新对象或上述两条语句直接写成Dim ADOcn As New Connection 建立数据库连接一般通过下列语句完成与数据库的连接“ADOcn.O

16、pen 连接字符串语句中的连接字符串可以通过自动生成“连接字符串 “的方法来实现,见教材184185 页。(2)对数据库中的数据表进行更新操作更新操作包括增加、删除和修改,这些语句的特点是没有返回的结果集,它们仅仅向数据库发出一条更新命令。可以利用 Connection 对象的 execute 方法来完成。语法如下:ADOcn.Execute SQL 语句字符串为了提高程序的可读性和易维护性,通常采用如下方法完成上述操作:声明一个字符串变量Dim strSQL As String拼写 Insert、Delete、Updata 结构化查询语句例如:strSQL = Delete From 学生成绩表strSQL = strSQL + Where 学号 + Combol.Text+执行 SQL 语句ADOcn.Execute strSQL(3) 对数据表进行查询(Select)操作记录集 Record

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号