VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > VB.net教程 >
  • vb.net 教程 8-3 数据库操作2

版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。

下面将用实例来说明mdb数据库操作:

当按钮1按下时候:

 


  1.  
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
  2.  
    Dim odc As New OleDbConnection()
  3.  
    odc.ConnectionString = "Provider = Microsoft.ACE.OLEDB.12.0;data source=D:\save\博客教程\08 数据库\Northwind.mdb;"
  4.  
     
  5.  
    Dim odcommand As New OleDbCommand()
  6.  
    odcommand.CommandText = "select 产品.产品名称 as 产品名称,类别.类别名称 as 类别 from 产品 inner join 类别 on 产品.类别ID=类别.类别ID where 产品.单价>30"
  7.  
    odcommand.Connection = odc
  8.  
    odc.Open()
  9.  
     
  10.  
    Dim odReader As OleDbDataReader
  11.  
    odReader = odcommand.ExecuteReader(CommandBehavior.SingleResult)
  12.  
     
  13.  
    Dim queryString As String = ""
  14.  
    If odReader.HasRows Then
  15.  
    Do While odReader.Read
  16.  
    queryString &= odReader.GetName(0) & ":" & odReader.GetString(0) & " " & odReader.GetName(1) & ":" & odReader.GetValue(1) & vbCrLf
  17.  
    Loop
  18.  
    End If
  19.  
     
  20.  
    odc.Close()
  21.  
    TextBox1.Text = queryString
  22.  
    End Sub

 

 

 

对以上代码进行分析:

建立OleDbConnection odc

设置odc的连接字符串,Provider是使用的数据驱动,由于我是用的电脑系统是win10 64位,所以这里设置的是Microsoft.ACE.OLEDB.12.0 (更多信息请参看我的另外一篇博文:vs2015 64位系统下使用mdb数据库问题 ),data source是数据库的路径,如果数据库和程序在同一目录下也可以使用:data source=Northwind.mdb。

新建OleDbCommand实例 odcommand

设置odcommand的sql命令:获得产品名称和类别,其中用到了内联查询,有关sql简单操作,请参看 《简单的SQL语言》相关内容

设置odcommand的数据连接为odc

打开数据连接

新建OleDbDataReader odReader

odcommand使用ExecuteReader方法将数据读取到odReader,并且只返回一个查询的结果,

         其中,CommandBehavior是一个枚举,主要成员有:          CloseConnection 在执行该命令时,如果关闭关联的 DataReader 对象,则关联的 Connection 对象也将关闭。           SchemaOnly 查询仅返回列信息。          SingleResult 查询只返回一个查询结果集。 注意,odcommand可以同时执行多个查询。          SingleRow 查询应返回结果集中的单个行

如果odReader中包含数据,那么

使用odReader.Read方法循环读取

读取的结果包括列名(GetName)和对应的值(GetString或GetValue),

        GetName(0)中,数字0是对应查询结果的第一项;GetName(1)是查询结果第二项

        GetString(0)是获得对应的字符串值,GetByte、GetInt16、GetInt32……是获得对应数据类型的值。         更简单的方法是直接用 GetValue,系统可以对应的转换。

最后关闭连接。

结果如下:

 

 

由于.net平台下C#和vb.NET很相似,本文也可以为C#爱好者提供参考。
 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/UruseiBest/article/details/78776457

相关教程