版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数据库系统原理数据库系统原理 与应用技术与应用技术 主讲:陈漫红主讲:陈漫红 北京联合大学师范学院北京联合大学师范学院 电气信息系电气信息系 第第14章章 用用VB进行进行C/S结构数据库开发结构数据库开发 n14.1 C/S体系结构介绍体系结构介绍 n14.2 Visual Basic访问访问SQL Server数据数据 库概述库概述 n14.3 用用Visual Basic开发开发C/S结构的图书结构的图书 管理系统管理系统 n14.4 本章小结本章小结 14.1 C/S体系结构介绍体系结构介绍 n数据库应用结构是指数据库运行的软、 硬件环境。通过这个环境,用户可以访 问数据库中的数据。
2、n四种最常见的应用结构: n集中式结构 n文件服务器结构 n客户/服务器结构 n互联网应用结构 集中式应用结构 优点是可以实现集中管理,安全性好。缺点是费 用昂贵,不能真正划分应用程序的逻辑。 应用程序 数据库 大型机 按键信息 终端字符 终端1 终端N 终端2 客户端 文件服务器结构 优点在于实现的费用比较低廉,而且配置非常灵活。缺 点是,由于所有的应用处理都要在客户端完成,要经 常在网络上传送大量无用的数据.因此客户端的个人 计算机必须要有足够的能力。例如Foxpro. 应用程序 数据库 网络文件服务器 文件 文件请求 工作站1 工作站N 工作站2 客户端 应用程序 应用程序 客户/服务器
3、结构 n优点:应用程序或应用逻辑可以根据需要划分 在服务器和客户工作站中,在完成一个特定任 务时,客户端工作站上的程序和服务器上的程序 可以协同工作,同时极大地减少了网络流量。 应用程序 数据库 服务器 数据请求 结果 工作站1 工作站N 工作站2 客户端 应用程序 应用程序 互联网应用结构 优点:最终用户应用软件的安装和维护都非常简 单,客户端不再需要安装、配置应用软件的工 作。这些工作只需在Web服务器上完成,从而 减少客户端与服务器端软件配置的不一致以及 不同版本应用软件所带来的问题。 客户端 应用程序 数据库 数据库服务器 页 面 请 求 页面 个人机1 个人机N 个人机2 数据请求
4、结果 Web服务器 浏览器 浏览器 浏览器 14.2 Visual Basic访问访问SQL Server 数据库概述数据库概述 n14.2.1 Visual Basic 访问SQL Server数 据库的方式 n14.2.2 Visual Basic 中的数据库访问控 件 n14.2.3 使用ADO访问SQL Server数据 库的一般步骤 14.2.1 Visual Basic 访问SQL Server 数据库的方式 (1)DAO/Jet方式方式 (2)ODBC API编程方式 (3)使用VBSQL对DBLib API编程 (4)使用RDO对象 (5)使用ADO对象 14.2.2 Visu
5、al Basic 中的数据库访问 控件 这些控件分为两大类: n一类是提供数据源的控件.例如Data控件、 Remote Data 控件(RDC)、ADO Data控件等, 它们用来快速建立到某个数据表或查询的连接 ; n另一类是用来显示数据源内容的控件,例如 DataGrid、DataList、DBGrid以及文本框例、复选框、 组合框、图像、标签、列表框、图片框等 “数据绑定 控件” ,这类控件通过DataSource属性连接到数据源 ,然后显示该数据源的内容,并允许用户对内容进行 添、删、改、查等操作。 14.2.2 Visual Basic 中的数据库访问 控件 (1)ADO Data
6、控件控件 nADO数据控件是目前流行的数据访问控件 ,它支持OLE DB数据访问模型。 n使用ADO数据访问控件,除了可以访问大 型关系型数据库管理系统和小型个人数 据库管理系统。 nADO数据控件是ActiveX控件,需要手工 将其添加到工具箱中。 n选择“工程”菜单下的“部件” Adodc控件在窗体上的形式 n在ADO Data控件的属性窗 口中,选择(自定义)属性 后的按钮,打开”属性页 ”对话框.在”通用”页面中 选择”使用ODBC数据资源名 称”,并在下拉列表框中选 择Mysql.单击”身份验证” 选项卡,输入SA及密码.单击 ”记录源”选项卡,选择命令 类型为8-adCmdUnkn
7、own, 在命令文本中输入:SELECT * FROM XS ORDER BY XH n设置完成后单击”确定”按钮. ADO数据控件的主要属性、方法和事件 nConnectionString属性 n用于建立与数据源的连接 nCommandType属性 n指明命令的类型,共有四种 nRecordSource属性 n用于设置ADO结果集的内容 nMaxRecords属性 n决定结果集中的记录的最大数目 nRecordset属性 n用于存放从数据提供者那里获得的查询结果 ConnectionString属性 n单击ADO数据控件属性页中的 “ConnectionString”属性,然后单击 按钮 C
8、ommandType属性 nadCmdUnknown:默认值。表示 RecordSource中的命令类型未知。 nadCmdTable:RecordSource属性的内 容是一个表名。 nadCmdText:RecordSource属性的内 容是一个查询语句文本串。 nadCmdStoredProc:RecordSource属 性的内容是一个存储过程名。 RecordSource属性 n用于设置ADO结果集的内容. n这个内容可以来自于一张表,也可 以来自一个查询语句,也可以来自 一个存储过程的执行结果。 nRecordSource属性的值与 CommandType属性的值有关,两者 协同使用
9、。 设置RecordSource属性 n在已经设置好ConnectionString属性的 ADO数据控件上右击鼠标,在弹出的菜单 中选择“ADODC属性”命令,在弹出此对 话框上选择“记录源”标签页。 DataGrid控件控件 (2)DataGrid控件控件 ADO Data控件本身都不能显示数据库记录,控件本身都不能显示数据库记录, 它们必须与它们必须与“数据绑定控件数据绑定控件”配合使用,才配合使用,才 能 在 窗 体 中 显 示 数 据 库 记 录 的 内 容 。能 在 窗 体 中 显 示 数 据 库 记 录 的 内 容 。 DataGrid控件就是一种简单易用且功能强大控件就是一种简
10、单易用且功能强大 的的“数据绑定控件数据绑定控件”。 DataGrid控件控件 n具体方法是在Visual Basic主菜单中选择“工 程部件”命令,在部件对话框中找到 Microsoft DataGrid Control 6.0 (OLE DB) 一 项并选中它,单击“确定”按钮之后, DataGrid控件就添加到Visual Basic的工具箱 中了。 DataGrid控件控件 DataGrid控件的主要属性有: nDataSource属性:设置与DataGrid关联的数 据源。 nAllowAddNew属性:是否允许增加新记录。 nAllowDelete属性:是否允许删除记录。 nAll
11、owUpdate属性:是否允许修改记录。 nAllowArrows属性:是否允许在运行时利用光 标键来移动网格的输入焦点。 14.2.3 使用ADO访问SQL Server数据库 nADO是Visual Basic访问数据库的主流技术。 使用ADO访问SQL Server数据库有两种主要 形式:ADO Data控件(即ADODC)和ADO对 象编程模型(即ADO代码)。这两种方式可 以单独使用,也可以同时使用。 14.2.3 使用ADO访问SQL Server数据库 (1)使用ADO Data控件访问SQL Server数据库 该方法优点是代码少,一个简单的数据库应用程序甚 至可以不用编写任何
12、代码。它的缺点是功能简单, 不够灵活,不能满足较复杂的数据库应用程序的需 要。 见演示示例 14.2.3 使用ADO访问SQL Server数据库 nADO数据控件是ActiveX控件,需要手工将 其添加到工具箱中。 n选择“工程”菜单下的“部件” n在ADO Data控件的属性窗口中,选择(自定义)属 性后的按钮,打开”属性页”对话框.在”通用”页 面中选择”使用ODBC数据资源名称”,并在下拉列表 框中选择Mysql.单击”身份验证”选项卡,输入SA及密 码.单击”记录源”选项卡,选择命令类型为8- adCmdUnknown,在命令文本中输入:SELECT * FROM XS ORDER
13、BY XH n设置完成后单击”确定”按钮. 14.2.3 使用ADO访问SQL Server数据库 (2)使用ADO对象模型访问SQL Server数据库 该方法的优点是具有高度的灵活性,可以编写 复杂的数据库应用程序。它的缺点是代码编 写量较大,对初学者来说有一定困难。 使用ADO对象模型访问SQL Server数据 库 ADO对象模型对象模型 Connection Errors Error Command Parameters Parameter Recordset Fields Field Record Fields Field Stream 各对象作用 nConnection对象包含了
14、与数据源连接的信息。 nCommand对象包含了与一个命令相关的信息。 nRecordset对象包含了从数据源得到的记录集。 nField对象包含了记录集中的某个记录的字段信息 。 nProperty对象:ADO对象的属性。 nParameter对象:与命令对象相关的参数。 nError对象:包含了由数据源产生的Errors集合中 的扩展的错误信息。 n见例题 Connection对象 n表示一个OLE DB数据源的开放式连接。 n是ADO对象模型的基础。 n在使用ADO对象模型编程之前,必须先 引用ADO对象模型。方法为:在VB的“ 工程”菜单下选择“引用”命令,然后 在打开的窗口中选择“M
15、icrosoft ActiveX Data Objects 2. Library”选项 (其中“”代表机器上所安装的版本号 )。 Connection对象的主要属性对象的主要属性 nConnectionString 用于指定连接到的数据源名称,使用方法及 含义同ADO数据控件。 nProvider 连接中使用的OLE DB提供者。 nConnectionTimeout 执行Open方法之后等待建立连接的秒数,默 认为15秒。0表示无限期等待。 nState 表示Connection对象是打开还是关闭的常量。 Connection对象的主要方法对象的主要方法 nOpen:打开带有数据源的连接,即
16、真正的 建立起到数据源的物理连接。 nClose:关闭一个打开的与数据源的连接 ,即终止与数据源的连接。 nExecute:在没有创建Command对象的情况 下执行连接中的一个命令。 nBeginTrans:开始一个事务。 nCommitTrans: 提交一个事务。 nRollbackTrans:回滚一个事务 Connection对象的主要事件对象的主要事件 nExecuteComplete:连接中的命令被执行后发 生的动作。 nBeginTransComplete:在BeginTrans方法完 成后发生的动作。 nRollbackTransComplete:当RollbackTrans 操
17、作完成时发生的动作。 nWillConnect:在试图连接到数据源之前发生 的动作。 nWillExecute:试图在连接中执行一条命令前 发生的动作。 Connection对象的主要集合对象的主要集合 nErrors Error对象的集合。 nProperties 描述连接的Property对象集合。 使用Connection对象 (1)设置ConnectionString连接属性 Dim adoCn As ADODB.Connection Set adoCn = New ADODB.Connection 使用ODBC数据源连接数据库 adoCn.ConnectionString = DNS
18、=ODBC_DSN;UID = LoginID; PWD= password 使用OLE DB提供者连接数据库 adoCn.ConnectionString = Provider=SQLOLEDB.1;User ID=LoginID; Initial Catalog=Pubs;Data Source=DB_Server_Name 使用Connection对象 (2)使用Open方法建立连接 Open方法用于打开连接: adoCn.Open (3)使用Close方法断开连接 用于关闭一个打开的Connection对象,即断开 与数据源的连接。 adoCn.Close Command对象 nCom
19、mand对象代表对数据源执行的命 令。 n使用Command命令可以查询数据,并 将查询结果返回给RecordSet对象。 Command对象的主要属性对象的主要属性 nActiveConnection:指定当前使用的连接。 nCommandText:命令的文本表达(SQL语句、存 储过程名和表名)。 nCommandType:指定要执行的命令的类型,与 CommandText属性的内容对应。取值如下: nCmdText:指定CommandText的内容是一个SQL 语句。 nadCmdTable:指定CommandText的内容是一个 表名。 nadCmdStoredProc:指定Comma
20、ndText的内容是 一个存储过程名。 nadCmdUnknown:默认值,表示命令类型未知。 Command对象的主要属性对象的主要属性 nCommandTimeout 数据源作出响应的最长等待秒数。 nName 表示Command对象的字符串。 nState 表示对象是打开、关闭、正在执行某一命 令和获取记录时的状态常量,其取值同 Connection对象的State属性。 Command对象的主要方法对象的主要方法 nExcute 执行CommandText属性中指定的命 令并返回由此生成的记录集。 nCreateParameter 创建一个与命令相关的新的参数对 象。 Command对
21、象的主要集合对象的主要集合 nParameters 与Command对象相关的Parameter对 象的集合。 nProperties 描述Command对象相关的Property 对象的集合。 使用Command对象 声明对象 Dim adoCn As ADODB.Connection Dim adoCm As ADODB.Command 建立连接 Set adoCn = New ADODB.Connection adoCn.ConnectionString = Provider=SQLOLEDB.1;User ID=LoginID; _ Data Source=DB_Server_Name
22、 adoCn.Open 使用Command对象 执行命令 Set adoCm = New ADODB.Command Set adoCm.ActiveConnection = adoCn adoCm.CommandText = select * from authors adoCm.Execute 使用Command对象名执行命令 adoCm.Name = SelAuthors Set adoCm.ActiveConnection = adoCn adoCm.CommandText = select * from authors adoCn.SelAuthors 用名字执行命令 Records
23、et对象 n代表从数据提供者那里获取的数据记 录集。 nRecordset对象的主要功能包括: n建立记录集; n确定要操作的记录集中的记录; n通过移动指针浏览记录; n对记录集中的数据执行更改操作; n对记录集中的数据进行过滤。 Recordset对象的主要属性对象的主要属性 nAbsolutePosition:记录集中当前记录的顺序位 置。 nActiveCommand:记录集中创建的命令。 nActiveConnection:记录集中创建的连接。 nBOF:如果当前行移动到记录集的第一条记录 的前边,则为真。 nEOF:如果当前行移动到记录集的最后一行记 录的后边,则为真。 nBook
24、mark:记录集中当前记录的唯一标识。 nDataSource:指定要绑定的数据源。 Recordset对象的主要属性对象的主要属性 nEditMode:表示当前记录是否正在被编辑, 这个值可以是adEditNone、adEditInProgress 、adEditAdd和adEditDelete。 nFilter:允许用户选择记录集中的部分数据进 行操作。其使用方法为: RecordsetRecordset对象名对象名.Filter = .Filter = 选择表达式选择表达式 其中“选择表达式”的写法同SELECT语句中 的WHERE子句。 释放过滤的语句为: RecordsetRecor
25、dset对象名对象名.Filter = adFilterNone.Filter = adFilterNone Recordset对象的主要属性对象的主要属性 nMaxRecordsMaxRecords:记录集中能返回的最多记录数。:记录集中能返回的最多记录数。 nRecordCountRecordCount:记录集中记录的个数。如果:记录集中记录的个数。如果ADOADO 不能判断记录集有多少条记录,可以返回不能判断记录集有多少条记录,可以返回 adUnknown(-1)adUnknown(-1)。 nSortSort:将记录集按指定字段排序。:将记录集按指定字段排序。 nSourceSourc
26、e:记录集来源的命令和:记录集来源的命令和SQLSQL查询。查询。 nCursorLocationCursorLocation:描述记录集中使用的游标的:描述记录集中使用的游标的 位置的常量。位置的常量。 nCursorTypeCursorType:描述记录集中使用的游标类型的:描述记录集中使用的游标类型的 常量。常量。 nLockTypeLockType:控制编辑过程中设置的加锁类型。:控制编辑过程中设置的加锁类型。 Recordset对象的主要方法对象的主要方法 nAddNew:向记录集中添加一条新记 录。 nCancelUpdat:取消对数据的修改。 nClose:关闭记录集。 nDel
27、ete:删除当前记录。 nFind:查找符合某些规则的记录。 nMove:将当前记录的位置移动一定 的间隔。 Recordset对象的主要方法对象的主要方法 nMoveFirst:移动到第一条记录。 nMoveLast:移动到最后一条记录 nMoveNext:移动到下一条记录。 nMovePrevious:移动到上一条记录 nOpen:打开一个记录集。 nUpdate:当Edit和AddNew方法完成后要 执行的方法。 nUpdateBatch:在一个游标中当批量处理 完成后要执行的方法。 Recordset对象的主要事件对象的主要事件 nEndOfRecordset 当记录集中因没有更多的记
28、录,而引起 MoveNext方法执行失败时产生的事件。 nFieldChangeComplete 当字段中的值被改变后产生的事件。 nRecordsetChangeComplete 当对记录集所做的修改被执行时产生的事件。 Recordset对象的主要事件对象的主要事件 nWillChangeField 一个Field对象的值被改变前产生的事件。 nWillChangeRecord 一个列被改变之前产生的事件。 nWillChangeRecordset 记录集中的修改都完成前产生的事件。 nWillMove 记录指针重新定位前产生的事件。 Recordset对象的集合对象的集合 nRecord
29、set对象包含的集合是Fields ,它是记录集中的字段集合。 使用Recordset对象的步骤 (1)打开记录集)打开记录集 n使用使用Command对象的对象的Execute方法创建方法创建Recordset 对象:对象: Set adoRecordset = adoCommand.Execute n使用使用Connection对象的对象的Execute方法创建方法创建 Recordset对象:对象: Set adoRecordset = adoConnection.Execute(select * from authors) n直接使用直接使用Recordset对象的对象的Open方法创
30、建方法创建 Recordset对象:对象: adoRecordset.Open Recordset对象的Open方法 n语法格式为: Recordset.Open Source, ActiveConnection, CursorType, LockType, Options n所有这些选项都是可选的,可以在调用Open方法之 前,通过设置这些选项对应的属性来设置其值。 nSource选项指定了要从哪里获取数据,其有: n一个返回记录的Command对象。 nSQL语句。 n表名。 n存储过程名。 Open方法的一些选项 nActiveConnection选项指定了要使用的ADO连接,这 个选项
31、可以是一个已打开的Connection对象,也可 以是一个连接字符串。 nOptions选项为提供者提供了附加信息。这些选项包 括: nadCmdUnknown:默认值。不向提供者提供附加信息。 nadCmdText:告诉提供者CommandText属性是文本命令。 nadCmdTable:是表的名字。 nadCmdStoredProc:是存储过程名。 nadCmdFile:是一个文件名。 Field对象 nField对象表示记录集中数据的某个单独 的列。 n一旦获得了记录集,通常接下来就是使 用Fields集合来读取记录集中的数据。 n由于Fields集合是Recordset对象的默认 属性
32、,因此,在使用时可以省略此名称 。例如: Recordset.Fields(0).Value Recordset(0) Field对象的主要属性对象的主要属性 nActualSize 字段中实际存储的数据尺寸。 nDefinedSize 字段能存储的最大数据量。 nName 字段的名称。 nNumericScale 十进制小数点右边的位数。 Field对象的主要属性对象的主要属性 nOriginalValue 在其他用户改变字段之前字段的值。 nPrecision 十进制小数的精度。 nType 描述字段的数据类型的常量。 nValue 字段中存储的数据。 14.3 用用Visual Basi
33、c开发开发C/S结构的图结构的图 书管理系统书管理系统 n14.3.1 需求分析需求分析 n14.3.2 功能流程设计功能流程设计 n14.3.3 数据库设计数据库设计 n14.3.4 创建数据库创建数据库 n14.3.5 Visual Basic代码编写与调试代码编写与调试 n14.3.6 打包发行打包发行 14.3.1 需求分析需求分析 n运用Visual Basic语言和SQL Server2005数据 库开发一个基于C/S结构的图书管理系统。使 用该系统,图书管理员可以方便地对图书信 息和读者信息进行管理;读者可以方便地查 找自己想要的书籍。 14.3.2 功能流程设计功能流程设计 n
34、(1)功能设计:本系统将根据角色分配权限, 将整个系统分为两个子系统:管理员子系统和 读者子系统 图书信息管理 新 书 入 库 某本 图书 全部 图书 管理员子系统 图 书 查 询 图 书 修 改 图 书 注 销 读者信息管理 读 者 登 记 某位 读者 全部 读者 读 者 查 询 读 者 修 改 读 者 注 销 读者子系统 图书管理系统 某本 图书 全部 图书 图 书 查 询 n(2)流程设计 :系统使用同一的登录界面, 根据用户输入的用户名和密码自动识别其身份 是管理员还是读者,然后进入相应的子系统, 并提供相应的功能服务。 开始 登录和身份识别 管理员 进入管理员子系统 管 理 图 书 信 息 管 理 读 者 信 息 结束 结束 读者 进入读者子系统 查 询 图 书 信 息 结束 14.3.3 数据库设计数据库设计 (1)E-R图和数据字典 书号 书名 作者 责任编辑 字数 页数 定价 库存量 出版时间 主题分类
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中海地产员工奖惩制度
- 食品公司奖惩制度范本
- 保洁人员考核奖惩制度
- 项目部质量安全奖惩制度
- 餐饮企业销售奖惩制度
- 店铺音乐规范奖惩制度
- 小学生一卡双星奖惩制度
- 装修公司工人奖惩制度
- 质检内部考核奖惩制度
- 政府车队请销假奖惩制度
- 第三单元整本书阅读《骆驼祥子》 课件(内嵌视频) 2025-2026学年统编版语文七年级下册
- 2025 国际经济合作中的区域贸易协定课件
- 《物流与供应链管理》教案
- 2025年事业单位教师招聘考试英语学科专业知识试卷(英语教学课件)试题
- GB/T 3146.1-2010工业芳烃及相关物料馏程的测定第1部分:蒸馏法
- GB/T 30812-2014燃煤电厂用玻璃纤维增强塑料烟道
- 住院医师规范化培训临床技能结业考核体格检查评分表(神经外科)
- 小学二年级下册体育教案(全册)
- 中国外文出版发行事业局所属企事业单位公开招聘71人模拟试卷【共500题附答案解析】
- 《导游基础知识》61中国古典园林概说课件
- (中职)客房服务与管理项目二楼层服务与管理 典型任务一 进行客房清洁(2课时)教案
评论
0/150
提交评论