版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。
下面将用实例来说明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是使用vb.net教程的数据驱动,由于我是用的电脑系统是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#爱好者提供参考。