vb.net 教程 8-3 数据库操作2

来源:互联网 发布:超声波动物驱赶器,知乎 编辑:程序博客网 时间:2024/06/10 22:09

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

当按钮1按下时候:

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click        Dim odc As New OleDbConnection()        odc.ConnectionString = "Provider = Microsoft.ACE.OLEDB.12.0;data source=D:\save\博客教程\08 数据库\Northwind.mdb;"        Dim odcommand As New OleDbCommand()        odcommand.CommandText = "select 产品.产品名称 as 产品名称,类别.类别名称 as 类别 from 产品 inner join 类别 on 产品.类别ID=类别.类别ID where 产品.单价>30"        odcommand.Connection = odc        odc.Open()        Dim odReader As OleDbDataReader        odReader = odcommand.ExecuteReader(CommandBehavior.SingleResult)        Dim queryString As String = ""        If odReader.HasRows Then            Do While odReader.Read                queryString &= odReader.GetName(0) & ":" & odReader.GetString(0) & "   " & odReader.GetName(1) & ":" & odReader.GetValue(1) & vbCrLf            Loop        End If        odc.Close()        TextBox1.Text = queryString    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#爱好者提供参考。

学习更多vb.net知识,请参看vb.net 教程 目录


原创粉丝点击