欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    数据库技术与应用第8章-VB.NET与数据库应用程序.ppt

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

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

    数据库技术与应用第8章-VB.NET与数据库应用程序.ppt

    1,本章主要内容:ADO.NET体系结构;VB.NET与SQL Server数据库的连接;数据库应用系统开发中的程序设计.,第 8 章 VB.NET与数据库应用程序,2,8.1 数据库访问技术基本概念,1.通用数据存取(Universal Data Access,UDA):为了实现“可从任意类型计算机上的任意应用程序中访问任意类型的数据源”,微软提出了UDA概念。而OLE DB和ODBC技术就是这一概念的实现。,3,8.1 数据库访问技术基本概念,UDA的关键是数据访问的透明性。即不管数据在什么地方,数据的提供者可以是各种项目,包括Oracle、SQL Server数据库、EXCEL、E-Mail、文件系统、消息库等等。UDA通过提供简洁的数据访问层解决了异构数据访问的问题。使程序员可以用统一的编程接口,访问不同的数据源。不会因为数据源的不同,而产生程序编写上的不同。,4,8.1 数据库访问技术基本概念,5,ADO(ActiveX Data Object):是在OLE DB的上层,它进一步简化了数据访问编程。使得应用程序访问数据库变得更加方便简单。ADO.NET采用ADO体系结构模型,并扩展了功能。本章重点介绍ADO.NET的对象模型功能以及如何利用这些对象建立VB.NET与数据库之间的数据访问功能。,8.1 数据库访问技术基本概念,6,2.ADO.NET体系结构ADO.NET的主要技术特点(1)支持断开连接模型。断开连接模型是指一旦获得所需的数据,就断开对数据源的连接,使用离线数据集继续在本机上处理数据。优点是大大减少传输切断数据的开销,保证应用程序不会太长时间持有数据库锁或持久连续占用数据库服务器资源,从而生成有高伸缩性的应用程序。,8.1 数据库访问技术基本概念,7,(2)采用XML作为数据交换的格式。XML是跨平台存储和传输数据的工业标准格式,用XML格式发送信息,可以让程序员很容易将共享数据应用程序中的数据处理和用户接口组件分离到不同服务器中,这对于支持多用户的系统来说,可以较大程度地提高系统的性能和可维护性。,8.1 数据库访问技术基本概念,8,ADO.NET组件两个核心组件:Dataset和.NET数据提供程序(Data Provider)Dataset对象用于保存数据,.NET数据提供程序通过执行SQL命令或存储过程来存取数据。,8.1 数据库访问技术基本概念,9,8.1 数据库访问技术基本概念,10,8.1 数据库访问技术基本概念,数据集:由表集和关系集构成。表集:由若干表构成。表:由 行集、列集和约束集构成。,11,说明:Dataset是ADO.NET的断开式结构的核心组件。它的设计目的:实现独立于任何数据源的数据访问。Dataset把数据以XML形式存放在客户端的内存(不是服务器)。Dataset是与数据源断开的,不知道数据提供者,无论数据源是什么,它都会提供一致的关系编程模型。,8.1 数据库访问技术基本概念,12,(2).NET Framework数据提供程序:用于实现对底层数据源的访问。组件包括:Connection、Command、DataAdapter和DataReader对象。(Connection对象提供与数据源的连接。Command对象执行数据库命令。DataReader 从数据源中提供高性能的数据流。DataAdapter 对象执行SQL命令,将数据采集来放入Dataset对象中。),8.1 数据库访问技术基本概念,13,在使用DataSet之前,都是属于DataProvider的执行范围,也就是每家数据库厂商各自的存取方式,所以用户必须选择合适的DataProvider对象。,8.1 数据库访问技术基本概念,.NET Framework提供了四个数据提供程序:它们分别为不同数据源提供数据访问操作支持。如下表。,14,表8.1 ADO.NET的四类数据提供程序,8.1 数据库访问技术基本概念,15,8.2 数据库访问控件对象,访问数据库主要涉及以下控件对象:SqlConnection/数据库连接对象SqlCommand/执行Sql命令对象SqlDataAdapter/数据适配器对象,用于采集数据并将数据送到客户端数据集DataSet中DataSet/数据集对象,一个数据集中可存放多个表中内容,16,Datatable/数据表对象,查询结果即可送入数据集Dataset,也可送入表Datatable。BindingMangerBase/“数据绑定管理器”对象SqlDataReader/数据只读对象,8.2 数据库访问控件对象,17,8.2 数据库访问控件对象,数据访问操作过程:,18,8.2.数据库访问控件对象,或,19,8.3 数据更新程序的设计,例1 以下面程序为主讲解更新程序的设计。,运行界面,20,设计界面,8.3 数据更新程序的设计,21,1.首先在界面上放入以下对象并设置相应属性:(1)Imagelist图像列表对象Imagelist1。设置属性Image,在其中放入若干图片。事先收集所用图片并存入该项目的Bin目录下。(2)ToolBar工具栏对象ToolBar1。设置Buttons属性,为工具栏添加各按钮,如图所示。(3)Button按钮对象Button1,属性Text=“查询”(4)若干文本框TextBox对象,设置Font属性.(5)若干标签Label对象 和2个GroupBox对象.设置Text属性和Font属性.,8.3 数据更新程序的设计,22,2.在工具箱的数据卡中拿一个数据适配器 SqldataAdapter1到界面中,可视化配置适配器。SQL语句为:Select*From 学生 注:也可以拖资源管理器中的“学生”表到界面上,那么“数据库适配器”、适配器用的“数据库连接对象”自动生成。(电脑演示),8.3 数据更新程序的设计,23,3.选中SqlDataAdapter1,在属性窗口中出现“生成数据集等操作选项”,如图所示。,单击“生成数据集”选项,生成Dataset11数据集。,4.设置各Textbox对象数据绑定属性DataBings.Text.例如:TextBox2的属性DataBings.Text为DataSet11.学生.学号,8.3 数据更新程序的设计,24,5.引用语句和绑定管理器的定义:访问数据库使用的引用语句Imports Public Class student1 Inherits 定义绑定管理器对象 Dim Mybind As BindingManagerBase,8.3 数据更新程序的设计,25,6.Form1窗体对象的Load事件代码:Private Sub student1_Load(。)。DataSet11.Clear()Try 执行适配器中查询并将结果填写到数据集中 Me.SqlDataAdapter1.Fill(Me.DataSet11,学生)Catch ex As Exception MessageBox.Show(ex.Message)End Try 设置绑定管理器管理的表 Mybind=Me.BindingContext(Me.DataSet11,学生)End Sub,8.3 数据更新程序的设计,26,7.工具栏ToolBar1的Click事件代码如下:Private Sub ToolBar1_ButtonClick(,ByVal e As)Select Case Case 首记录 返回首记录 Mybind.Position=0 Case 上记录“返回上记录 Mybind.Position-=1 Case 下记录 返回下记录 Mybind.Position+=1 Case 尾记录 返回尾记录 Mybind.Position=Mybind.Count-1 Case 新增 Mybind.AddNew(),8.3 数据更新程序的设计,27,Case 修改 Case 删除 删除当前记录 Mybind.RemoveAt(Mybind.Position)Case 保存 Try Mybind.EndCurrentEdit()结束编辑状态 如果数据集有变化,则保存 If Me.DataSet11.HasChanges=True Then SqlDataAdapter1.Update(Me.DataSet11.学生)End If Catch ex As Exception,8.3 数据更新程序的设计,28,MsgBox(ex.Message)Exit Sub End Try Case 取消 Mybind.CancelCurrentEdit()重新刷新一次数据集 SqlDataAdapter1.Fill(Me.DataSet11,学生)Case 关闭 Me.Close()End Select End Sub,8.3 数据更新程序的设计,29,8.“查询”按钮Button1的Click事件代码:Private Sub Button1_Click(。)。Dim sqlstr As String sqlstr=select*from 学生 where 学号 like&_ TextBox1.Text&Me.SqlDataAdapter1.SelectCommand._ CommandText=sqlstr DataSet11.Clear()Me.SqlDataAdapter1.Fill(Me.DataSet11,学生)End Sub,8.3 数据更新程序的设计,30,8.4 查询程序的设计,例2:设计按学号或姓名查询的程序。界面如下。,31,8.4 查询程序的设计,步骤:在界面上放以下对象并设置相应 属性.1.一个GroupBox对象,3个label对象,3个文本框。2.一个button1对象,属性text为“查询”。3.一个DataGrid1对象,可设置Font字体.,4.引用语句和公共变量定义如下。注意放置的位置。,32,8.4 查询程序的设计,Imports 引用语句Public Class Form1 Inherits 定义数据库连接字符串 Dim cnnstr As String=integrated security=SSPI;data source=MICROSOF-3739C7;initial catalog=教学数据库 创建数据库连接对象 Dim cnn As New SqlConnection(cnnstr)Dim dt As New DataSet 定义一个数据集 定义一个数据适配配对象 Dim Adapter As SqlDataAdapter,33,8.4 查询程序的设计,Private Sub Button1_Click(。)。Dim sqlstr As String 定义存放sql语句的字符串 sqlstr=select*From 学生 Where 学号 like“&_ snotxt.Text&“%&and 姓名 like&_ nametxt.Text&“%sql语句 创建adapter实例,并指定要执行的sql语句文本 和使用的连接 Adapter=New SqlDataAdapter(sqlstr,cnn),5.“查询”按钮的click事件代码:,34,8.4 查询程序的设计,dt.Clear()清空数据集Dt Try 根据查询条件填写数据集Dt Adapter.Fill(Me.dt,学生)Catch ex As Exception MessageBox.Show(Ex.Message)Exit Sub End Try 设置DataGrid1的数据源 DataGrid1.DataSource=dt.Tables(学生),35,8.4 查询程序的设计,求人数 Dim Cmd as new SqlCommand sqlstr=select count(*)From 学生 Where 学号 like“&_ snotxt.Text&“%&and 姓名 like&_ nametxt.Text&“%”sql语句 cmd.CommandText=sqlstr Cmd.Connection=cnn cnn.Open()Textbox1.text=cmd.ExecuteScalar ExecuteScalar返回单个值 cnn.CloseEnd Sub,36,8.5 调用存储过程的查询程序,例3:通过调用存储过程来实现如下所示的查询程序。,图7-6,37,8.5 调用存储过程的查询程序,方法:1.打开SQL Server查询分析器。为“教学数据库”创建一个Student_Sno存储过程。,Create procedure Student_sno sno char(6),sname Varchar(10)as select*from 学生 where 学号 like sno and 姓名 like sname,38,8.5 调用存储过程的查询程序,图7-7,39,8.5 调用存储过程的查询程序,2.设计程序界面。布局如图7-8所示,2个标签Label,2个文本框TextBox,1个按钮Button,1个表格DataGrid。,图7-8,40,8.5 调用存储过程的查询程序,3.各控件主要属性设置。,41,8.5 调用存储过程的查询程序,4.代码设计:,Imports 引用语句Public Class student_query2 Inherits 公共变量定义 Dim cnnstr As String=integrated security=SSPI;data source=MICROSOF-3739C7;initial catalog=教学数据库 Dim cnn As New SqlConnection(cnnstr)Dim adapter As SqlDataAdapter Dim table1 As New DataTable,42,8.5 调用存储过程的查询程序,查询按钮的Click事件代码 Private Sub Button1_Click(。)。Dim sqlstr As String table1.Clear()清空dtable1 设置适配器命令文本和连接 adapter=New SqlDataAdapter(student_sno,cnn)设置适配器命令文本类型为存储过程=_ CommandType.StoredProcedure,43,8.5 调用存储过程的查询程序,为适配器命令定义参数 Dim para_sno As SqlParameter=_(sno,SqlDbType.Char,6)学号参数 Dim para_sname As SqlParameter=_(sname,SqlDbType.VarChar,10)姓名参数 将界面值送入参数 para_sno.Value=para_sname.Value=,44,8.5 调用存储过程的查询程序,Try 根据查询条件重新填写table1 adapter.Fill(table1)Catch ex As Exception MessageBox.Show(ex.Message)Exit Sub End Try 设置表格数据源为表Table1 DataGrid1.DataSource=table1 End SubEnd Class,45,8.6 照片浏览程序设计,例4:浏览学生照片。,46,8.6 照片浏览程序设计,1.设计程序界面。布局如图上页图所示,2个标签Label,1个文本框TextBox,1个按钮Button,1个图像框PictureBox2.属性设置(略)3.代码设计,47,8.6 照片浏览程序设计,Imports Imports System.IOPublic Class append_phto Inherits 定义本类中使用的变量和对象 Dim cnnstr As String=integrated security=SSPI;data source=MICROSOF-3739C7;initial catalog=教学数据库 Dim sqlstr As String 用于装sql语句的字符串变量 Dim cnn As New SqlConnection(cnnstr),48,8.6 照片浏览程序设计,定义一个SqlCommand对象 Dim cmd As SqlCommand 定义一个数据适配器对象 Dim adapter As SqlDataAdapter 定义一个数据表 Dim table1 As New DataTable,49,8.6 照片浏览程序设计,Private Sub Button1_Click()显示照片 sqlstr=select*from 学生 where 学号 like&_ TextBox1.Text.Trim&adapter=New SqlDataAdapter(sqlstr,cnn)table1.Clear()adapter.Fill(table1)将数据填入数据表Table1 If table1.Rows.Count=0 Then MessageBox.Show(没有这个学生!)PictureBox1.Image=Nothing 清空图像框 exit Sub End If,50,8.6 照片浏览程序设计,Dim b()As Byte Try 读照片字段中的数据到数组 b=table1.Rows(0)(照片)Catch ex As SystemException 若不能显示,清除图形框 Me.PictureBox1.Image=Nothing MessageBox.Show(无照片!)Exit Sub End Try 传送数组B中内容到MemoryStream对象S Dim S As New System.IO.MemoryStream(b),51,8.6 照片浏览程序设计,Try 显示照片 Me.PictureBox1.Image=Image.FromStream(S)Catch ex As SystemException 若不能显示,清除图形框 Me.PictureBox1.Image=Nothing End Try End SubEnd Class,52,8.7 登录程序设计,例5 系统登录程序。界面如下。,53,8.7 登录程序设计,程序代码Public Class Form1 Dim adapter As SqlDataAdapter Dim dtable As New DataTable Private Sub Button2_Click()取消按钮 Me.Close()End Sub,54,8.7 登录程序设计,Private Sub Button1_Click(.).确定按钮 Dim sqlstr As String If TextBox1.Text 0 and TextBox2.Text 0 Then sqlstr=select 密码 from 操作员where 用户名 like _&TextBox1.Text&and 密码 like&_ TextBox2.Text&Me.adapter=New SqlDataAdapter(sqlstr,_ SqlConnection1)Me.adapter.Fill(dtable)If dtable.Rows.Count=0 Then MessageBox.Show(密码错误,信息提示)Exit Sub End If,55,8.7 登录程序设计,MessageBox.Show(欢迎使用系统)Dim f2 As New Form2 Me.Hide()f2.Show()End If End SubEnd Class,56,联系我们:同济大学计算机系计算机基础教研室,谢谢!,

    注意事项

    本文(数据库技术与应用第8章-VB.NET与数据库应用程序.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

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




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开