欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    数据库应用程序开发.pptx

    • 资源ID:80056527       资源大小:557.29KB        全文页数:53页
    • 资源格式: PPTX        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数据库应用程序开发.pptx

    111.1 11.1 数据库概述数据库概述数据库以一定的组织方式将相关的数据组织在一起,存放在计算机外存储器,能为多个用户共享,与应用程序彼此独立的一组数据的集合。VisualBasic支持多种类型的数据库,如Access数据库、FoxPro数据库、Microsoft Excel、SQLServer和Oracle等。第1页/共53页2关系型数据库模型关系型数据库模型 关系型数据库模型将数据用表的集合来表示。通过建立简单表之间的关系来定义结构,而不是根据数据的物理存储方式建立数据中的关系。不管表在数据库文件中的物理存储方式如何,都可以把它看作一组行和列。数据库表第2页/共53页3关系型数据库关系型数据库 表是有关信息的逻辑组,行被称为记录,列则被称为字段。主键记录字段第3页/共53页4使用SQL查询数据库结构化查询语言(StructureQueryLanguage,SQL)是操作关系数据库的工业标准语言。通过SQL命令,可以从数据库的多个表中获取数据,也可对数据进行更新操作。SQL的主要语句:从数据库中删除一个表数据定义DRUP在数据库中建立一个新表数据定义CREATE用来改变特定记录和字段的值数据操作UPDATE向表中插入一条记录数据操作INSERT从数据表中删除记录数据操作DELETE在数据库中查找满足特定条件的记录数据查询SELECT描述分类命令.第4页/共53页5SELECTSELECT语句语句 1SELECT语句的基本语法形式 SELECT 目标表达式列表 FROM 表名 WHERE 查询条件 GROUP BY 分组字段 HAVING 分组条件 ORDER BY 排序关键字段 ASC|DESC它包含4部分,其中SELECT和FROM子句是必须的,通过使用SELECT语句返回一个记录集。例 在学生基本情况表中查询物理系的学生情况:SELECT*FROM 基本情况 WHERE专业=物理第5页/共53页6SELECTSELECT语句语句-输出表达式输出表达式目标表达式为查询结果要显示的字段清单(字段间用逗号分开)。数据的显示顺序由字段清单的顺序决定。可用星号*代表所有字段;可用AS短语指定字段别名;可通过构造表达式对原始数据进行复杂的运算处理,产生查询结果。例如,根据出生年月计算每个学生的年龄SELECT 姓名,(Year(Date()-Year(出生年月)AS 年龄 FROM 基本情况 第6页/共53页7SELECTSELECT语句语句-查询条件查询条件WHERE子句用于限制记录的选择例如,查询1985-01-01到1986-12-31之间出生的学生:SELECT*FROM基本情况WHERE出生年月BETWEEN#1985-01-01#AND#1986-12-31#要枚举出若干项进行查询,使用运算符IN例如,查询物理系和数学系的学生数据:SELECT*FROM基本情况WHERE专业IN(物理,数学)等价于:SELECT*FROM基本情况WHERE专业=物理OR专业=数学第7页/共53页8SELECTSELECT语句语句-合计函数合计函数合计函数用于对记录集进行统计返回指定字段中的最小值MIN返回指定字段中的最大值MAX返回特定字段中所有值的总和SUM返回选定记录的个数COUNT获得特定字段中的值的平均数AVG描 述合计函数例如,统计物理系学生的人数:SELECTCOUNT(*)AS学生人数FROM基本情况WHERE专业=“物理”COUNT(*)在统计时包含值为空值的记录COUNT(表达式)统计时忽略表达式值为空值的记录第8页/共53页9SELECTSELECT语句语句-分组分组GROUPBY子句将指定字段列表中有相同值的记录合并成一条记录。例如,计算每个学生各门课程平均分:SELECT学号,AVG(成绩)AS平均分FROM成绩表GROUPBY学号要对分组后的数据进行过滤,可在GROUPBY子句后结合HAVING子句在分组中选择。例如,查询平均分在80分以上的学生:SELECT学号,AVG(成绩)AS平均分FROM成绩表GROUPBY学号HAVINGAVG(成绩)=80第9页/共53页10SELECTSELECT语句语句-排序排序ORDERBY子句决定了查询结果的排列顺序在ORDERBY子句中,可以指定一个或多个字段作为排序关键字,ASC选项代表升序,DESC代表降序。第10页/共53页11SELECTSELECT语句语句-多表连接多表连接若查询的数据分布在多个表中,则必须建立连接查询:SELECT目标表达式列表FROM表1,表2WHERE表1.字段=表2.字段例如,学生成绩表中只有学号,如何在查看学生成绩的同时能够直观地看到学生姓名?这就要在两表之间建立连接。SQL语句如下:SELECT基本情况.姓名,成绩表.*FROM基本情况,成绩表WHERE成绩表.学号=基本情况.学号第11页/共53页12VB.NET数据库访问 数据库访问过程数据库应用程序引例例11.1设计一个窗体,用DataGrid控件显示Student.mdb数据库中“基本情况”表的内容。第12页/共53页13 数据库访问过程数据库访问过程 VB.NET采用ADO(ActiveXDataObjects)数据访问技术,编写本程序,需要完成以下工作:界面设计在窗体上添加DataGrid控件创建对象连接绑定数据到DataGrid控件使其能显示在窗体上。程序代码第13页/共53页14 VB.NET VB.NET数据库访问过程数据库访问过程 应用程序通过连接对象与服务器上的数据源建立连接(不同类型的数据库使用各自的连接提供程序)第14页/共53页15 数据访问过程数据访问过程 命令对象发出SQL命令从数据源中获取数据 数据集对象用来保存所查询到的数据记录 数据适配器用于在数据源和数据集之间交换数据。当数据传输到客户端后,ADO.NET断开与数据源的连接,应用程序离线工作如果应用程序改变了数据集的内容,通过重新连接来提交变化。第15页/共53页16数据集数据集 数据集是一个容器,一个数据集可以包含多张数据表及数据表之间的关系,这些表可以来自多个数据库或电子表格之类的非数据库源。一旦数据在数据集内,则不管它的原始源是什么,都可以使用一致的对象模型对它进行操作。在 ADO.NET 中,数据传输的格式是 XML,是基于文本的标准格式,不使用二进制信息,它可以通过任何协议发送。ADO.NET 自动根据需要将数据转换为 XML 或从 XML 转换出数据,而用户不必知道 XML。第16页/共53页17 使用数据控件访问数据库使用数据控件访问数据库 ADO.NET数据控件对象有4套:用于SQLServer7.0(以Sql为前导名)用于Oracle数据库(以Orc为前导名)用于ODBC数据源(以Odbc为前导名)用于OLEDB接口的数据库(以OleDb为前导名)第17页/共53页18使用使用OleDbOleDb数据控件数据控件OleDb数据控件对象是一个通用对象,可访问目前流行的数据库系统 数据对象名称数据对象名称功能描述功能描述OleDbConnection建立一个与数据源的连接建立一个与数据源的连接OleDbCommand用用于于执执行行一一条条SQL语语句句,以以便便从从数数据据源源中中获取数据获取数据OleDbDataReader提提供供从从数数据据源源读读取取数数据据行行的的接接口口,需需要要与与OleDbCommand配合使用配合使用OleDbDataAdapter 在在与与数数据据源源连连接接时时,可可从从数数据据源源读读数数据据填填充充DataSet或更新数据源或更新数据源DataSet是保存在内存中供使用的数据副本是保存在内存中供使用的数据副本第18页/共53页19使用使用OleDbOleDb访问数据库访问数据库1启动数据适配器配置向导将数据适配器对象OledbDataAdapter从工具箱拖放到窗体或组件上。2创建连接第19页/共53页20选择提供程序选择提供程序选择提供程序第20页/共53页21指定访问的数据库指定访问的数据库指定要访问的数据库文件 第21页/共53页22配置命令对象配置命令对象选择使用SQL 语句建立查询 第22页/共53页23命令对象重要属性命令对象重要属性命令对象最重要的属性Connection 指定连接对象CommandType 使用命令的类型CommandText 操作命令的内容第23页/共53页24连接对象重要属性连接对象重要属性连接对象最重要的属性是ConnectionString,它是一个字符串,包含了用于与数据源建立连接的相关信息。典型的 ConnectionString 属性值如下:Provide,指定连接提供程序的名称;Data Source,用于指定要连接的数据源文件。第24页/共53页25生成数据集 选择“数据|生成数据集”命令,打开“生成数据集”对话框。12.命名数据集34第25页/共53页26生成数据集 选择“数据|生成数据集”命令,打开“生成数据集”对话框。12.命名数据集34注意:这里的DataSet1是指一个数据集的定义,它是一个用xml格式表示的,文件名为Dataset1.xsd的数据集定义文件,并不包含任何的数据库中的数据。而按此文件架构产生的DataSet11才是一个包含实际数据的数据集对象实例。第26页/共53页27 数据绑定数据绑定 什么是数据绑定?数据绑定是一个过程,即在运行时自动为与数据集中的元素关联的控件设置属性。以便通过控件显示数据集中的数据。第27页/共53页28数据绑定数据绑定 Windows 窗体有简单数据绑定和复杂数据绑定简单数据绑定简单数据绑定就是将控件绑定到单个数据字段。每个控件仅显示数据集中的一个字段值。最常用的简单数据绑定是将数据绑定到文本框和标签。要建立数据绑定,需要在设计或运行时对控件的DataBinding属性进行设置。第28页/共53页29简单数据绑定简单数据绑定 例11.2数据绑定的操作过程 界面设计 创建和配置数据集 设置绑定属性 程序代码PrivateSubForm1_Load()HandlesMyBase.LoadDataSet11.Clear()OleDbDataAdapter1.Fill(DataSet11,基本情况)EndSub第29页/共53页30简单数据绑定简单数据绑定 使用BindingContext 对象浏览数据记录Position 属性数据集当前记录的位置序号Count 属性数据表中的记录条数 转跳到第一条记录Me.BindingContext(DataSet11,基本情况).Position=0转跳到上一条记录Me.BindingContext(DataSet11,基本情况).Position-=1 转跳到下一条记录Me.BindingContext(DataSet11,基本情况).Position+=1 最后一条记录的Position 属性值等于Count 属性值-1 第30页/共53页31复杂数据绑定复杂数据绑定 复杂数据绑定允许将多个数据元素绑定到一个控件,同时显示记录源中的多行或多列。支持复杂数据绑定的控件:数据网格DataGrid、组合框ComboBox和列表框ListBox等 第31页/共53页32复杂数据绑定复杂数据绑定 复杂数据绑定属 性设置控控件件属属性性说说明明DataGridDataSource指定数据源指定数据源,例如例如DataSetDataMember若若DataSet包包含含的的表表不不止止一一个个,则由该属性指定要绑定的表则由该属性指定要绑定的表ComboBoxListBoxDataSource指定数据源指定数据源DisplayMember显示的字段显示的字段ValueMember组合框、列表框中选择后的值组合框、列表框中选择后的值第32页/共53页33复杂数据绑定复杂数据绑定 例11.3复杂数据绑定的操作过程 界面设计 创建和配置数据集 数据绑定 本例DataGrid控件要绑定不同的表,故需要通过代码设置控件的DataSource 属性。程序代码 PrivateSubButton1_Click()HandlesButton1.ClickDataGrid1.DataSource=DataSet11.Tables(基本情况)EndSubPrivateSubButton2_Click()HandlesButton2.ClickDataGrid1.DataSource=DataSet11.Tables(成绩表)EndSub第33页/共53页34使用代码访问数据库使用代码访问数据库创建数据对象的代码:Dim 数据对象 As New 对象类(参数)例11.4用代码实现例11.2的功能界面设计导入ADO.NET名称空间ImportsSystem.Data第34页/共53页35创建对象创建对象创建OleDbConnection连接对象创建连接Student.mdb的对象objConn,代码:DimobjConnAsNewOleDbConnection(strConn)objConn.Open()创建创建OleDbDataAdapter对象DimstrSql=Select*From基本情况DimobjAdapAsNewOleDbDataAdapter(strSql,objConn)第35页/共53页36创建对象创建对象 创建数据集对象Dim objDSet As New DataSet用数据集的“基本情况”表填充objDSet对象 objAdap.Fill(objDSet,基本情况)第36页/共53页37使用代码绑定数据使用代码绑定数据实现数据绑定 使用控件的DataBindings属性的Add方法建立绑定:控件对象.DataBindings.Add(NewBinding(控件属性,数据集,字段名)例将字段姓名绑定到控件TextBox1的Text属性:基本情况.姓名)第37页/共53页38记录的浏览记录的浏览浏览记录,各命令按钮的Click 事件代码为:首记录:Me.BindingContext(objDSet,基本情况).Position=0上一条:Me.BindingContext(objDSet,基本情况).Position-=1下一条:Me.BindingContext(objDSet,基本情况).Position+=1尾记录:Me.BindingContext(objDSet,基本情况).Position=Me.BindingContext(objDSet,基本情况).Count-1 第38页/共53页3911.3 数据库操作数据库操作数据库编辑操作常见的编辑操作就是对数据的增、删、改。使用命令对象直接对数据源进行操作,方法如下:CommandText属性设置SQL语句调用Execute方法执行SQL语句ExecuteReader返回DataReader结果集ExecuteNonQuery不返回数据的SQL命令(增、删、改)ExecuteScalar返回单个数据的SQL命令(例对数据的统计、求和)第39页/共53页40增加数据记录增加数据记录使用Insert语句插入一条记录到数据源。例如:Insert into 基本情况(姓名,学号)Values(李力,50101)实际参数可通过文本框输入,可在Values短语中使用标记传递实参值:Insert into 基本情况(姓名,学号)Values(name,num)而参数定义的语法为:Dim 参数名 As new OleDBparameter(sql查询或更新字符串中的映射名,数据类型,长度)第40页/共53页41增加数据记录例增加数据记录例例11.5 在例11.4的基础上添加增加记录、删除记录、修改记录按钮,当单击“增加”按钮时,先清空文本框,并将按钮提示改变成“确认”;当在文本框输入数据后,再单击“确认”,将文本框内输入的数据构成一条记录插入到数据源、重新填充数据集并恢复按钮提示。代码说明第41页/共53页42删除数据源内的记录 删除数据源内的记录使用Delect语句Delect 基本情况 Where 学号=50102实参50102通过文本框输入。要用输入值构成删除条件,除了采用参数传递方法外,也可用字符连接运算符拼接变量形成条件,例如:Delect 基本情况 Where 学号=&TextBox2.Text 注意:如果字段的类型为字符型,则输入值的两侧加上单引号:Delect 基本情况 Where 学号=&TextBox2.Text&字段的类型为日期型,将单引号改为#第42页/共53页43删除数据记录 删除数据集内的行使用Rows对象的Delete方法例:删除Tables(“基本情况”)中的第三条记录:objDSet.Tables(基本情况).Rows(2).DeleteDelete方法并不真正实现删除,而只是在Rows集合中对指定的行作删除标记,直到数据集对象调用AcceptChanges方法的时候,才真正被删除;如果是RejectChanges方法被调用,那么Delete方法删除的数据行对象将被恢复。例11.6为例11.5中删除按钮添加代码。代码说明第43页/共53页44修改数据记录 修改数据源中的记录使用Update语句Update 基本情况 Set 专业=计算机 Where 学号=50102修改程序编写与增加记录类似,其关键是:使用参数传递或字符动态拼接的方法将新的数据传递到Update 语句 能在数据源中定位要更新的记录(通常可使用关键字段作为定位条件)对于数据集,数据绑定结构通常是双向的,能自动将更改从数据绑定控件发送到数据集。例11.7为修改按钮添加代码代码说明第44页/共53页45数据库查询操作数据库查询操作 方法一通过命令对象执行SQL语句,从数据源中获取信息,查询条件由Select语句的Where短语构成,使用And与Or逻辑运算符组合出复杂的查询条件方法二使用数据集的数据视图(DataView)的筛选功能第45页/共53页46数据库查询操作数据库查询操作 数据视图(DataView)的主要方法与属性方法与属性方法与属性功能描述功能描述使用示例使用示例Sort方法方法对对DataView包包含含的数据进行排序的数据进行排序objDataView.Sort=姓名姓名Find方法方法搜搜索索指指定定的的数数据据行行(必须先排序必须先排序)rec=objDataView.Find(李力李力)RowFilter属性属性筛选满足条件的筛选满足条件的数据行数据行objDataView.RowFilter=成成绩绩80第46页/共53页47模糊查询模糊查询 模糊查询使用运算符Like,用百分号%来代替任意个不确定的内容,用下划线_代替一个不确定的内容。例如,“姓名Like张%”将查询所有张姓的人员,而“姓名Like张_”查询以“张”开头,只有两个字的记录。例11.8 设计一个应用程序,演示不同的查询功能代码说明第47页/共53页48数据处理 1预备知识二进制大型对象(BinaryLargeObject,BLOB)是指任何需要存入数据库的随机大块字节流数据,例如图形或声音文件。数据库中存放BLOB的字段必须是二进制类型(在Access中为OLE对象),在ADO.NET中如何处理BLOB类型的数据,把图形作为数据库的一个字段值存放在数据库,并能显示图形数据?第48页/共53页49BLOB数据处理 在PictureBox控件显示Image对象时,不能直接绑定到字段。要操作BLOB类型的数据,需要使用Stream类。Stream是数据流,包含在System.IO大类中。FileStream是用于文件操作的Stream,MemoryStream 在内存封装BLOB数据,这样就能直接访问这些封装的数据。第49页/共53页50BLOB数据处理 Stream通过一个字节类型的数组执行对文件的读写操作。使用Read或Write方法时,需要指定字节起始位置和最多处理的字节数FileStream使用格式:FileStream(文件路径,FileMode.模式,FileAccess.操作)模式为:Open、Create操作为:Read、Write第50页/共53页51图形数据写入数据库 用FileStream对象读模式打开图形文件Dim文件对象AsNewFileStream(图形文件名,FileMode.Open,FileAccess.Read)定义字节类型的数组(大小为文件长度)Dim数组()AsByteReDim数组(文件对象.Length)读文件到数组文件对象.Read(数组,0,文件对象.Length)文件对象.Close()写入到数据源数据集.Tables(数据表).Rows(记录号).Item(图形字段名)=数组第51页/共53页52思考题思考题1.什么是.NET框架?2.简述VB.NET的特点3.VB.NET有多种类型的窗口,若想在设计时看到代码窗口,怎样操作?4.如何使各窗口显示或不显示?5.如果窗口布局搞乱了,如何恢复默认布局?6.解决方案与项目的区别?第52页/共53页53感谢您的观看!第53页/共53页

    注意事项

    本文(数据库应用程序开发.pptx)为本站会员(莉***)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开