Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Программирование на Visual Basic, VB .NET и VBA Уроки программирования


Рассылка форума bit.pirit.info

Рассылка от 19.11.2009.
Тема: Соединение с MySQL базой данных.(Технология ADO)


Для работы необходимо скачать "Connector ODBC 5.1" и установить. Далее установить ссылку "Microsoft ActiveX Data Objects 2.8 library". В модуле Connection происходит непосредственно подключение к базе данных, и объявление глобальных переменных, которыми мы будем в последствие пользоваться. Модуль MySQl_Read позволяет не загромождать лишним кодом программу, и упростить действия программиста. Собственно в нем происходит обращение к необходимой таблице путем SQL запроса. Последний участок кода показывает получение из таблицы Class, поля Id_name 1-е значение. И вывод этого значения в сообщении.
код:
'В модуль Connection.
Public ADO_Connect As ADODB.Connection
Public ADO_Recordset As ADODB.Recordset
Public Sub Connect_in_MySQL_DataBase()
On Error Resume Next

Set ADO_Connect = New ADODB.Connection
With ADO_Connect
.ConnectionString = "Provider=MSDASQL.1;Driver=MySQL ODBC 5.1 Driver;Server=" & хост & ";UID=" & логин & ";PWD=" & пароль & ";Database=" & База данных
.Mode = adModeReadWrite
.Open
End With

If Err.Description <> "" Then
Set ADO_Connect = Nothing
Set ADO_Recordset = Nothing
MsgBox "Внимание! Ошибка поключения к базе данных!" & Chr(13) & Err.Description, vbCritical, "Error: Connect MySQL"
End
End If


код:
'В модуль MySQL_read
Public Sub Read_MySQL(SQL As String)
On Error Resume Next
Set ADO_Recordset = New ADODB.Recordset
With ADO_Recordset
Set .ActiveConnection = ADO_Connect
.CursorLocation = adUseClient
.CursorType = adOpenKeyset
.LockType = adLockOptimistic
.Source = SQL
.Open
End With
End Sub


код:
'Получение из таблицы Class, столбика Id_name, 1-й строки
call Read_MySQL("SELECT * FROM Class;")
msgbox ADO_Recordset("Id_name")
set ado_recordset = nothing


Материал был подготовлен BloodPact.

По всем вопросам и предложениям обращаться на форум.

В избранное