• Иллюстрированный самоучитель по Visual Basic .NET

    Пространство имен System.Data.OleDb

    Пространство имен System.Data.OleDb содержит классы, используемые при взаимодействии с OLE DB-совместимыми базами данных (такими, как Microsoft Access или Microsoft Fox Pro). Обычно в программах используются классы OleDbConnectlon, OleDbCommand и OleDbDataReader этого пространства имен. Ниже приведены краткие описания этих важных классов.

    • Класс OleDbConnection: можно считать, что этот класс представляет соединение с источником данных OLE DC и содержит свойства, необходимые для подключения к базе данных (данные провайдера OLE DB, имя пользователя и пароль). После соединения в экземпляре класса сохраняются дополнительные метаданные о базе данных.
    • Класс OleDbCommand: класс представляет команды SQL, применяемые к базе данных OLE DB. Вместе с командой хранятся все параметры и дополнительная информация, необходимая для обработки запроса.
    • Класс OleDbDataReader: используется после получения данных от источника при помощи двух классов, описанных выше. Является специализированной формой класса потока ввода (см. главу 9) и умеет только читать данные, возвращаемые объектом OleDbCommand. Аналогом объекта DataReader в ADO является набор записей, хранящийся на сервере, доступный только для чтения и поддерживающий только перебор в прямом направлении.

    Ниже приведен пример использования этих трех классов. Наше приложение подключается к базе данных Northwind, входящей в поставку Access и современных версий SQL Server.

    1 Imports System.Data.OleDb
    2 Module Modulel
    3 Sub Maint)
    4 Dim myAccessConn As OleDbConnection
    5 Dim dbReader As OleDbDataReader
    6 Dim dbCmd As OleDbCommand =New OleDbCommand(
    7 "SELECT Employees.FirstName.Employees.LastName FROM Employees")
    8 Try
    9 ' Открыть соединение
    10 myAccessConn = New OleDbConnection(
    11 "Provider=Microsoft.Jet.OLEDB.4.0;" &_
    12 "Data Source=C:\Program Files \Microsoft _
    Office\0ffice\SamplesNNorthwind.mdb")
    13 myAccessConn.Open()
    14 dbCmd.Connection = myAccessConn
    15 dbReader = dbCmd.ExecuteReader(CommandBehavior.SingleResult)
    16 Do While dbReader.Read()
    17 Console.WriteLine(dbReader.GetString(0) & " " & _
    dbReader.GetString(1))
    18 Loop
    19 Console.ReadLine()
    20 Catch e As Exception
    21 MsgBox(e.Message)
    22 End Try
    23 End Sub
    24 End Module
    

    Результаты, полученные при запуске этого приложения, показаны на рис. 11.1.

    Иллюстрированный самоучитель по Visual Basic .NET › Поддержка баз данных в VB.NET › Пространство имен System.Data.OleDb
    Рис. 11.1. Результаты выполнения простого запроса SQL

    Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.