Страницы: 1
RSS
подключение и запрос из VBA в MySQL
 
Добрый день!

Есть необходимость получить данные из базы данных MySQL внутри VPN сети.
Покопавшись в инете написал скрип, но он не подключается к базе -выдает ошибку:
"Сервер не существует или доступ запрещен"

Поднял локальную копия сервера - ошибка та же...

Кто знает, подскажите, пожалуйста - в скрипте ошибки нет?

вот код:
Код
Sub Get_data()

    Dim cn As ADODB.connection
    Dim rs As ADODB.Recordset
 

    Const sql As String = "Provider=SQLOLEDB.1;Password=***;Persist SecurityInfo=True;" & _
    "User ID=***;Initial Catalog=project;Data Source=127.0.0.1"
    Const sSql As String = "SELECT name FROM `customers`"
    
    
    Set cn = CreateObject("ADODB.Connection")
    cn.Open sql
    Set rs = cn.Execute(sSql, 3, 1)
    Rez = rs.GetRows
    rs.Close
    cn.Close
    Set cn = Nothing: Set rs = Nothing
    MsgBox Rez
End Sub
 
Ошибку выдает на 13 строке
 
На первый взгляд Вы используете в строке подключения провайдера MS SQL - Provider=SQLOLEDB.1, а не MY SQL.

Здесь посмотрите один из вариантов подключения к MY SQL из VBA

Здесь более подробно расписано
Изменено: Александр Макаров - 18.01.2022 22:05:21
 
Спасибо, попробую установить соответствующий...

скачал по ссылке драйвер, установил, изменил тестовый код как приведено на сайте

Код
Dim oConn As Object
    Set oConn = New ADODB.connection
    
    oConn.Open "DRIVER={MySQL ODBC 8.0.28 Driver};" & _
        "SERVER=localhost;" & _
        "DATABASE=project;" & _
        "UID=***;" & _
        "PASSWORD=***;" & _
        "PORT:3306;" & _
        "charset=cp1251;" & _
        "Option=3;"
    
    If oConn.State = adStateOpen Then
        MsgBox "Connected! =)"
    Else
        MsgBox "Ñan not connect... =("
    End If
пишет ошибку в строке 4:
"Диспетчер драйверов ODBC. Источник данных не найден и не указан драйвер..."
Изменено: Artmasterpro - 18.01.2022 22:56:23
 
Разрядность офиса и разрядность драйвера одинаковые?
В  источниках данных (ODBC) посмотрите
 
У меня Office 2003 (х32)
драйвер взял с сайта мускуля тоже х32
регистрировал через командную сторку install.bat, получил ответ - DONE, как в описании по регистрации

ответ тотже....

теперь получается вопрос "не какой скрипт, а как установить драйвер?"
нужно ли какоен-то подключение его в VBA?

Кто знает? Подскажите, плизззз!


Вопрос решен - дело было в драйвере, у кого будет похожая ситуация, ставте драйвер .msi, а не .zip
                                                            и проблем не будет!
Изменено: Artmasterpro - 19.01.2022 16:11:04
Страницы: 1
Наверх