




已阅读5页,还剩39页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
VisualBasic程序设计简单教程第4版同济大学计算机类基础学科2,第10章数据库应用基础,10.1数据库概要10.2VB数据库访问10.3记录集对象10.4综合应用数据库以一定的组织方式将相关数据集中存储在计算机以外的存储器中,由多个用户共享,与应用程序相互独立的一系列数据的集合。 VisualBasic支持多种类型的数据库,包括访问数据库、FoxPro数据库、MicrosoftExcel、SQLServer和Oracle。 本章的目录,4,4,10.1.1关系型数据库模型,关系型数据库模型用表的集合表示数据。 建立简单表之间的关系来定义结构,而不是基于数据的物理存储方式来建立数据关系。 无论表如何以物理方式存储在数据库文件中,都可以将其视为一组行和列。 本章的目录、5、关系型数据库、表称为与信息相关的逻辑组、行称为记录、列称为字段。 本章的目录6,6,10.1.2使用SQL查询数据库,结构化查询语言(structurequeryorylanguage,SQL )是操作关系数据库的标准语言。 可以使用SQL命令从数据库的多个表中检索数据和更新数据。 SQL主要语句:本章的目录、7、SELECT语句和SELECT语句的基本语法形式的SELECT目标表达式列表FROM表名称WHERE查询条件GROUPBY组字段HAVING组条件ORDERBY排序键字段 ASC 示例在学生基本情况表中查看物理系统的学生情况: SELECT*FROM基本情况WHERE专业=物理,本章的目录,8,SELECT语句-输出表达式,目标表达式是查询结果中显示的字段列表(以逗号分隔字段)。 数据的显示顺序取决于字段列表的顺序。 可以在星号*中表示所有字段。可以使用AS子句指定字段别名。通过构建表达式,可以对原始数据进行复杂的运算处理并生成查询结果。 例如,根据出生年月日计算各学生年龄的SELECT名称,(Year(Date()-Year (出生年月日) ) AS年龄FROM的基本、本章的目录、9、SELECT语句-查询条件, WHERE子句查询在1985-01-01和1986-12-31之间生成的学生,以限制选择记录: SELECT*FROM的基本情况使用WHERE出生日期between # 1985-01-01 #和1986-12-31运算符IN, 查询物理系统和数学系统的学生数据以列举几个项目: SELECT*FROM基本情况WHERE专业IN (物理,数学),SELECT*FROM基本情况WHERE专业=物理 OR专业=数学,本章目录,10,SELECT语句-总函数,总函数为记录例如,统计物理系学生数: SELECTCOUNT(*)AS学生数FROM基本情况WHERE专业=物理 COUNT(* )统计时值为null的记录COUNT (表达式)统计时忽略表达式值为null的记录,本章的目录、11、SELECT语句-分组和GROUPBY子句指定例如,计算每个学生每个班级的平均点: SELECT班号、AVG (成绩) AS班平均点FROM班表GROUPBY班号可以对分组数据进行过滤,并且可以在GROUPBY子句之后与HAVING子句组合在一起例如,查询平均值大于或等于80分的学生: SELECT类编号、AVG类(成绩) AS类平均值FROM类表GROUPBY类having类#80、本章的目录、12、SELECT语句-排序和ORDERBY子句确定查询结果的排序顺序。 在ORDERBY子句中,可以指定一个或多个字段作为排序关键字,ASC选项表示升序,DESC表示降序。本章的目录、13、SELECT语句的图解、本章的目录、14、SELECT语句-多个表的连接、查询的数据分散在多个表中时,需要建立连接查询。 SELECT目标式列表FROM表1、表2WHERE表1 .字段=表2 .字段,例如,学生成绩表中只有学生编号,如何一边看学生成绩一边直观地看学生名? 这将建立两个表之间的连接。SQL语句包括: SELECT基本状况.名称,成绩表. *FROM基本状况,成绩表WHERE成绩表.学号=基本状况.学号,本章目录,15,10.2 VB数据库访问,10.2.1ADO数据控件使用基本数据库应用程序的引用示例10.1进行格式化本章目录,16,使用ADO数据控件,VB采用activexdataobjects (ado )数据访问技术编写此程序, 将ADO数据控制添加到表单使用ADO连接对象建立与数据提供器的连接使用ADO命令对象处理数据源,从数据源生成记录集,并将其存储在内存中以实现记录集和数据绑定控制的右键单击本章目录、17、数据源连接设置操作、ADO控制,选择快捷菜单ADODC属性命令,打开ADO控制属性页,选择本章目录、18、提供程序,选择提供程序,本章dec 本章目录,20,连接对象的重要属性,连接对象的最重要属性是ConnectionString,包含用于建立与数据源的连接的信息,指定要访问的数据库文件。 典型的连接属性值为provider=Microsoft.jet.oledb.4.0。data sources=student.MDB提供程序。 指定连接提供程序的名称DataSource :指定要连接的数据源文件。本章目录、21、VB数据库访问步骤、本章目录、22、数据访问步骤、应用程序通过连接对象与数据源建立连接(不同种类的数据库使用各自的连接提供程序)的命令对象发出SQL命令从数据源检索数据集对象并且查询的数据记录应用程序操作记录集的记录集包括基表或指示命令执行结果在存储器中的集合的记录(行)和字段(列),并且包括数据绑定是在运行时自动设置与记录集元素关联的控件属性的过程。 使用控件查看数据集中的数据。本章的目录、24、数据绑定和Windows表单中的简单数据绑定和复杂数据绑定简单数据绑定是将控件绑定到单个数据字段。 每个控件只显示数据集的一个字段值。 最常见的简单数据绑定是将数据绑定到文本框和标签。 在设计或运行时设置控件属性以建立绑定:数据源:指定ADO数据控件DataField :设置记录集的有效字段:本章目录,25,简单数据绑定,示例10.2数据绑定操作说明对于连接和记录集创建、绑定属性设置、本章目录、26、复杂数据绑定和复杂数据绑定,可以将多个数据字段绑定到一个控件,同时显示记录源的多行或多列。 支持复杂数据绑定的常见控件: DataGrid数据网格MSHFlexGrid数据网格DataList数据列表框DataCombo数据组合框,本章目录,27,复杂数据绑定, 示例10.3复杂的数据绑定操作过程界面设计,建立连接和生成记录集,数据绑定此示例DataGrid控件绑定不同的表,因此必须在代码中设置控件的DataSource属性程序代码,private sub command1_ click () adodc1. record source=基本 adodc1. refreshendsubprivatesubcommand2_ click () adodc1.recordsource=成绩表 adodc1.refreshendsub、本章目录、28、复杂的数据绑定,示例使用10.4sql语句选择数据表中的某些数据以配置记录集。 要绑定网格上的某些字段,必须编辑数据网格的布局。本章的目录、29、10.3.1记录集对象、10.3.1记录集引用,1.absoloutputon属性返回当前记录指针值,1到Recordset对象中包含的记录数。 2.BOF和EOF的属性BOF判定记录指针是否位于第一条记录的前面,EOF判定记录指针是否位于最后一条记录的后面。 如果BOF和EOF属性值都为True,则记录集为空。 本章的目录30,3.record count属性计算Recordset对象的记录数。 此属性是只读的。4.Find方法在Recordset对象中查找符合指定条件的记录,并将其设置为当前记录。 如果找不到,则记录指针位于记录集的末尾。 Recordset.Find搜索条件,位移、搜索方向、开始位置、本章的目录、31,5.move方法组move方法可用来代替通过数据控制对象的4个箭头按钮的操作遍历整个记录集。 (1)MoveFirst方法移动到第一条记录。 (2)MoveLast方法移动到最后一条记录。 (3)MoveNext方法移动到下一条记录。 (4)MovePrevious方法移动到上一条记录。 (5)Moven方法向前或向后移动n条记录。 示例10.5使用命令按钮而不是数据控制对象的四个箭头按钮功能,使用Find方法查找记录,总结本章目录、32、记录集属性方法,编辑本章目录、33、10.3.2记录集1 .数据编辑方法记录删除和更改涉及四种方法:将新行添加到AddNew方法记录集确认要删除Delete方法记录集的当前记录Update方法的更改。 保存在数据源中的CancelUpdate方法在Update方法未调用Update方法之前取消对记录所做的所有更改,本章的目录,34,添加新记录2 .添加新记录(调用AddNew方法以取消空记录) 指定给新记录的每个字段(可以通过绑定控件直接输入,也可以使用程序代码指定给字段)。 Recordset.Fields (字段名 )=以值(3)的形式调用Update方法,确认添加,将缓冲区内的数据写入数据库,本章的目录,35,删除记录3 .删除记录(1)将删除的记录定位到当前记录调用Delete方法(3)移动记录指针注意:使用Delete方法立即删除当前记录,不发出警告或提示。 删除记录时,绑定控件仍然显示该记录的内容。 因此,必须移动记录指针以更新绑定控件。本章的目录、36、记录的修正、4 .记录的修正数据项目的内容变更后,ADO自动变为编辑状态,编辑数据后,只需变更记录集的指针或调用Update方法即可确认变更。 例11.6例除了10.5以外,还追加了“新建”、“删除”、“更新”、“废弃”和“结束”5个按钮,通过追加、删除、变更按钮的编程,可以实现本章的目录、37、Adodc1.Recordset.AddNew追加记录、数据库、UpData、 编辑记录删除记录每个字段都包含Delete方法调用Update方法调用记录指针、数据修改总结,通过本章的目录、38、10.3.3查询和统计信息、SQL语句从数据源中检索信息,查询条件为Select语句的Where子句模糊搜索使用运算符Like,百分比符号%使用不确定的,下划线_使用不确定的。 例如,姓名Like张%查询所有张姓的人员例10.7根据输入的专业名称,在网格内显示Student.mdb数据库中该专业的学生信息,如本章的目录、39、10.3.3查询和统计、 示例10.8使用数据列表框或数据组合框提供专业名称,示例10.9使用SQL实现函数和组功能以统计每个专业人数和年龄分布。 本章的目录、40,10.3.4 blob数据处理和二进制大对象(BinaryLargeObject,blob )是指需要存储在数据库中的随机大块字节流数据,如图形和声音文件。 在数据库中存储BLOB的字段必须是二进制类型(在Access中为OLE对象)。 如何在ADO中处理BLOB类型的数据,将图表存储为数据库中的字段值并显示图表数据?本章目录、41、BLOB数据处理、AppendChunk方法将BLOB数据写入数据库,语法格式: ADO对象. Recordset.Fields (字段).AppendChunkData是二进制访问,BLOB数据使用ADO对象的AppendChunk方法,定义与文件长度相同的字节类型数组,并将文件保存到数组中。示例10.10选择指定的图形文件,将数据写入数据库,并在引用记录时显示照片。、本章目录、42、10.11综合应用、例10.11设计多媒体信息管理系统,要求多媒体数据保存在数据库中,具有记录增加、删除、统计和多媒体信息播放等功能。 例10.12设计航班信息查询
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广东省【中职专业高考】2025年中职高考对口升学(理论考试)真题卷【财经商贸大类】模拟练习
- 2025安徽黄山市黄山区消防救援大队政府专职消防员招聘2人模拟试卷及答案详解(历年真题)
- 2025海南保亭黎族苗族自治县市场监督管理局公益性岗位人员招聘1人考前自测高频考点模拟试题及答案详解(必刷)
- 广播安全播出技术培训课件
- 2025年甾体药物原料合作协议书
- Ibuprofenyl-CoA-Ibuprofenyl-coenzyme-A-生命科学试剂-MCE
- 广彩工艺传承
- 2025年离合器面片项目合作计划书
- GP130-modulator-2-生命科学试剂-MCE
- 2025年旋挖钻机项目合作计划书
- 2025至2030中国生物基化学品行业产业运行态势及投资规划深度研究报告
- 雾化吸入课件
- 采购战略合作协议范本5篇
- 财务部安全生产培训报告课件
- 公司兼职人员劳务合同4篇
- 制造过程质量追溯系统设计
- 2025年能源行业新能源产业风险管理可行性研究报告
- 会计毕业论文烟草专业
- 数字文旅概论 课件全套 第1-9章 数字文旅内涵与发展背景 - 数字营销
- 井盖安全常识培训课件
- 年产5万吨电熔锆刚玉新材料扩建项目环境影响报告表
评论
0/150
提交评论