VB.NET中利用ADO.NET连接数据库

来源 :电脑知识与技术 | 被引量 : 0次 | 上传用户:liongliong497
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:本文介绍了ADO、ADO.NET、ADO.NET 中相关类以及VB.NET中利用ADO.NET连接数据库的方法和步骤,并附加了数据库连接后的数据浏览、查询、删除、插入等操作的代码。
  关键词:ADO.NET;数据适配器;数据集
  中图分类号:TP311文献标识码:A文章编号:1009-3044(2007)05-11211-02
  
  1 引言
  Visual Basic.net作为应用程序的开发“利器”也表现在数据库应用程序的开发上,它良好的界面和强大的控件功能使数据库编程变得简单多了。但即便如此,数据库应用程序的开发仍然算得上是VB.net编程中的难点,这是因为你不仅要熟悉VB.net中关于数据库编程方面的知识(当然这是十分简单的)还要了解数据库的知识。本文主要介绍数据库连接方面的知识。
  
  2 相关概念
  数据库是长期存储在计算机内、有组织的、可共享的数据集合。数据库是按照某种数据模型组织的、存储在外存储器上,且可被多个用户同时使用。因此,它具有较小的冗余度,较高的独立性和易扩展性。数据库不是独立存在的,它是组成数据库系统的一部分,在实际应用中,人们面对的是数据库系统。ActiveX Data Objects (ADO) 是微软最新的数据访问技术。它被设计用来同新的数据访问层OLE DB Provider一起协同工作,以提供通用数据访问(Universal Data Access)。OLE DB是一个低层的数据访问接口,用它可以访问各种数据源,包括传统的关系型数据库,以及电子邮件系统及自定义的商业对象。 ADO向我们提供了一个熟悉的,高层的对OLE DB的Automation封装接口。对那些熟悉RDO的程序员来说,你可以把OLE DB比作是ODBC驱动程序。如同RDO对象是ODBC驱动程序接口一样,ADO对象是OLE DB的接口;如同不同的数据库系统需要它们自己的ODBC驱动程序一样,不同的数据源要求它们自己的OLE DB提供者(OLE DB provider)。目前,虽然OLE DB提供者比较少,但微软正积极推广该技术,并打算用OLE DB取代ODBC。
  ADO.NET是.NET框架中的数据访问模型,主要涉及到System.Data、System.Data.SqlClient和System.Data.OleDb三个命名空间中的类。应用程序使用“数据连接”对象建立到数据库的连接,这样才能够对数据库进行操作,“数据适配器”对象负责通过“数据连接”对象存取数据库中的内容,而取出的数据将临时存储在内存中的“数据集”对象中。应用程序可以通过数据集使用数据。另外,ADO.NET中还有一个Command对象,它可以对数据库执行SQL语句,而返回的结果可以通过DataReader 对象以只读、单向的方式获取。
  
  3 连接数据库的步骤
  VB.NET在访问数据库之前,首先必须建立该数据源的连接。在ADO.NET中,可以使用以下两个连接对象之一创建和管理连接。SqlConnection对象和OleDbConnection对象。其中SqlConnection用来连接SQLServer7.0版或更高版本,使用System.Data.SqlClient命名空间。OleDbConnection用来连接其他数据库。使用System.Data.OleDb命名空间。他们在后续的操作中使用的对象和方法也不完全一样。一般来说,连接数据库操作可以在form窗体初始化时进行,也就是在Form的InitializeComponent()过程中。
  以下主要讲述通过OleDbConnection连接的数据库操作。OleDbConnection主要用来连接除SQL Server以外的其他类型的数据库,当然它也能连接SQL Server,只不过此时效率没有使用SqlConnection对象那么高。
  第一步:建立数据库,此处不做介绍,假设已经用Access建立了数据库xs.mdb。并保存在当前项目的bin文件夹下。Xs.mdb中有表student.dbf,其结构如下:
  第二步:建立连接,在窗体的Initialize Component()过程中写下如下代码:
  第三步:创建数据适配器访问数据库
  访问数据库可以使用Command对象,也可以使用DataAdapter(数据适配器)对象,以下主要介绍OleDbAdapter对象,通过它来访问用OleDbConnection建立连接的数据库。
  数据适配器可以通过连接来访问数据库,并按照指定的SQL语句命令对数据库进行查询、添加、删除和修改等操作。适配器支持以下四个属性:
  SelectCommand 引用某命令从数据存储区检索行。
  InsertCommand 引用某命令以便向数据存储区插入行。
  DeleteCommand 引用某命令以便从数据存储区删除行。
  UpdateCommand 引用某命令以便修改数据存储区中的行。
  在以后对数据库数据的查询、添加、删除和修改时,会用到上面四个属性。
  通过数据适配器可以通过Fill方法填充数据集。数据集是ADO.NET的新特性,它类似于一个小型数据库,里面存储着数据,不过总是离线的,不占用连接,人们常把数据集对象比做一个存在内存中的,离线的数据库。数据集有同数据库相似的结构,例如都是由数据表、数据关系和约束等组成的。这使得开发者可以一次性的把数据从数据库读入内存中的数据集中进行离线的处理,对于分布式的应用程序,即应用程序和后端数据库不在同一台机器上,这样做能够极大的节省网络带宽,优化程序的性能。
  下面创建了数据适配器,并把xs数据库的student表中记录都检索出来。同时定义一个数据集ds1,并用数据适配器填充这个数据集,此时该数据集中应该包含student表中的所有记录。
  第四步:数据绑定
  在生成了数据集后,可以通过属性窗口把文本框和数据集中某个表的一个字段绑定,这样不需要编写代码来设置每一个文本框显示的内容了。选中一个文本框,比如name属性为txtname的文本框,希望它显示student表中的name字段,那么可以设置DataBinding属性下的Text为下拉框中的ds1下student的Name字段。同样设置其他文本框与字段的绑定。
  在窗体的layout事件中写如下代码填充数据集ds1,那么该数据集中就有记录了,而与之绑定的文本框也可以显示内容了。
  Ds1.clear()
  OleDbdataAdapter1.fill(ds1)
  此时运行该窗体,可以看到每一个文本框都显示了student表中的第一个记录。
  第五步:接下来可以写上数据浏览(包括第一个、上一个、下一个、最后一个四个按钮其name属性分别为Firstbut、forebut、nextbut、lastbut)、添加(name属性为addbut)、删除(name属性为delebut)、查询(name属性为querybut)和修改(name属性为updatebut)的代码。
  “第一个”按钮的代码:
  “上一个”按钮的代码:
  “下一个”按钮的代码:
  “最后一个”按钮的代码:
  按学号查询的代码:
  End Sub
  插入记录的代码:
  删除当前记录的代码:
  修改记录的代码:
  参考文献:
  [1]苏国彬. Visual Basic.NET程序设计教程[M]. 机械工业出版社,2002.9.
  [2]德特(Deitel,H.M.)(美). Visual Basic.NET程序设计专家指南[M]. 机械工业出版社,20002.10.
  本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。
其他文献
摘要:weblog作为一种新兴的网络交流工具已经广泛地应用到众多行业和领域,其在教育中应用也必将产生新的学习方式,甚至是教育理念的变化。本文就weblog在网络课程教学中的应用作初步的探讨,以期探索网络课程教学中新的學习模式。  关键词:weblog;网络课程;教学;应用  中图分类号:TP393 文献标识码:A 文章编号:1009—3044(2007)08—20589—02
期刊
摘要:利用USB可以实现较传统方式更有效、更经济、点数更多的多点数据采集。针对基于USB接口和LabVIEW平台的数据采集和数据处理程序设计中,常遇到的典型应用中的问题如:基于TCP的网络传输、软件滤波、数组组合、波形振幅统计、超限报警等问题,本文给出了较详细的解决方案和实用程序设计技巧。  关键词:USB;LabVIEW;数据采集;技术  中图分类号:TP331文献标识码:A 文章编号:1009
期刊
摘要:本文利用PB BLOB可以操作二进制大对象的特点,借助PB内置函数对PB的位操作能力进行了函数封装,扩展了PB的位操作能力并给出了在图像处理和工业控制中的应用实例。  关键词:PowerBuilder;二进制大对象;位操作;图像;工业控制  中图分类号:TP311.56 文献标识码:A文章编号:1009-3044(2007)05-11195-03    1 引言  PB作为一个开发工具,一直
期刊
摘要:虚函数是实现动态多态性的方法。包含虚函数的类定义的对象有一个虚函数表和一个指向虚函数表的指针vptr。本文探讨了影响vptr和虚函数表长度的因素。  關键词:虚函数;多态性;虚函数表;VPTR  中图分类号:TP311 文献标识码:A 文章编号:1009—3044(2007)08—20461—02
期刊
摘要:本文针对目前中小学CAI教学软件普遍存在交互性过低问题进行了探讨,介绍了一种能在易用性与高交互性取得较好平衡的編程语言Flash ActionScript,并结合《平面镶嵌》问题对其使用方法进行了说明。  关键词:CAI教学软件;软件交互性:Flash AS  中图分类号:TP311 文献标识码:A 文章编号:1009—3044(2007)08—20566—01
期刊
摘要:在分析结构化查询语句的基础上,提出了在VB中实现通用动态查询程序的原理和方法,并给出了具体的程序代码。  关键词:VB;数据库;查询   中图分类号:TP311文献标识码:A 文章编号:1009-3044(2007)05-11204-02    1 引言  Visual Basic 6.0 作为一种简捷、系统的Windows应用程序开发工具,具有强大的数据处理能力,被广泛应用于建立各种数据库
期刊
摘要:应用ID3挖掘方法,将基于数据库的数据挖掘技术应用于企业的生产、销售实践中用决策树对产品进行定性分析,找到产品销售情况的决策信息;及用分类法对产品品种进行选择的具体过程。  关键词:数据挖掘;决策树;ID3  中图分类号:TP312文献标识码:A文章编号:1009-3044(2007)05-11198-01    1 基本定义  (1)数据挖掘  数据挖掘(Data Mining)就是从大量
期刊
摘要:如何实现数据库的集成、共享和利用,提高了信息系统的整体效能,以及解决了XML和数据库双向传输的瓶颈,成为信息支持系统的关键问题之一。该文在分析可扩展标记语言XML特点的基础上,对XML与数据库之间基于DOM模型的映射方式进行了探讨,并给出了以XML文件作为中间文件的异构数据库集成,以及XML文档和数据库之间数据传输的实现方法。  关键词:XML;数据库集成;文档对象模型;XML查询  中图分
期刊
摘要:随着教育手段的革新与无线网络技术的发展,目前基于WLAN的无线校园网络构建技术已成主流,成为有线校园网网络延伸的重要手段之一。文章对无线局域网技术、无线校园网的构建做了介绍,并以淄博职业学院新校区的无线校园网建设为实例,提出了初步的设计方案。  关键词:无线局域网;WLAN;无线校园网;实现方案  中图分类号:TP393文献标识码:A 文章编号:1009-3044(2007)05-11213
期刊
摘要:Access数据库结构简单、功能比较齐全、使用维护方便,因此,在功能能够满足要求的条件下,往往成为一些小型数据库软件的首选。但是由于数据库的加密机制非常简单,很容易破解数据库密码,安全性差。本文在分析了MS Access数据库的加密原理以及现有破解方法的基础上,给出了简便易行的保护措施。并且,用VB给出了切实可行的实现方案。应用表明,该保护措施能有效地提高数据库的安全性。  关键词:ACCE
期刊