使用 ADO.NET 解锁 Microsoft Access 数据(2)
很多时候,您只是希望简单地浏览数据,而并不需要在数据间往返浏览,也不需要更改数据(我们将此称为“流水数据”)。ADO.NET 的 DataReader 对象是专门为此设计的。下面是我编写的一段示例代码,可以逐个读取连接的中的所有选定数据:
' Visual Basic .NET 代码。
' 控制台应用程序。
' 引用:
' System
' System.Data
' System.XML
内容来自dedecms
Imports System.Data.OleDb ' 用于 OleDb 对象。
Imports Microsoft.VisualBasic.ControlChars ' 用于 CrLf 常量。 copyright dedecms
Module Module1
Sub Main()
' 创建并初始化 OleDbConnection、OleDbCommand
' 和 OleDbDataReader 对象。
Dim objConn As New _
OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;" & _
"User ID=Admin;" & _
"Data Source=C:\Program Files\Microsoft" & _
"Office\Office10\Samplesorthwind.mdb")
objConn.Open()
dedecms.com
' 执行命令并将数据读取器附加到
' 所选数据。
Dim objCmd As New OleDbCommand("SELECT * FROM Products", _
objConn)
Dim objReader As OleDbDataReader = objCmd.ExecuteReader dedecms.com
' 读取数据并列出值。
Call ReadData(objReader) 织梦内容管理系统
End Sub
织梦好,好织梦
Public Sub ReadData(ByVal objReader As OleDbDataReader) 本文来自织梦
' 目的:列出给定数据读取器的数据值。
' 接受:objReader - 数据读取器。
织梦内容管理系统
Dim intField As Integer ' 行中的当前字段。
Dim intColumn As Integer ' 当前列的名称。
Dim blnColumns As Boolean = False ' 列名称是否已
' 列出。
织梦好,好织梦
With objReader
' 一次读取一行,直至文件末尾。
Do While .Read = True
本文来自织梦
For intField = 0 To .FieldCount - 1
copyright dedecms
' 首先列出列名称。
If blnColumns = False Then
内容来自dedecms
For intColumn = 0 To .FieldCount - 1
If intColumn = .FieldCount - 1 Then
Console.Write(.GetName(intColumn) & _
CrLf)
Else
Console.Write(.GetName(intColumn) & _
", ")
End If 内容来自dedecms
Next intColumn
dedecms.com
' 只列出一次列名称。
blnColumns = True copyright dedecms
End If
' 列出当前行中每个字段的值。
If intField = .FieldCount - 1 Then
Console.Write(.Item(intField) & CrLf)
Else
Console.Write(.Item(intField) & ", ")
End If
Next intField dedecms.com
Loop 内容来自dedecms
End With copyright dedecms
' 暂停,以便用户在控制台窗口中查看数据。
Console.Write("按任意键继续...")
Console.Read()

文章评论
共有位Admini5网友发表了评论 查看完整内容