powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Run time error '3706'
15 сообщений из 15, страница 1 из 1
Run time error '3706'
    #32882577
Azart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Dim conn As ADODB.Connection
Dim rsCustomers As ADODB.Recordset
Set conn = New ADODB.Connection

conn.open "Provider=SQLOLEDB.1;integrated security=SSPI;data source= BB;
persist security info=False;initial catalog= AA;"
Set rsCustomers = New ADODB.Recordset
...
при компиляции возникает следующая ошибка: Run time error '3706'
Method 'Open' of object '_Connection' failed и выделяется строка коннекта.

Та же строка конненкта в VB.NET работает отлично.
...
Рейтинг: 0 / 0
Run time error '3706'
    #32882730
Azart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Немного не корректно описал: компиляция проходит нормально, но при вызове conn.open - ошибка!
...
Рейтинг: 0 / 0
Run time error '3706'
    #32882731
Фотография Worobjoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добавить
;Password=111;User ID=Имя

Без пользователя и пароля можно только если
data source = (local)
...
Рейтинг: 0 / 0
Run time error '3706'
    #32882763
Azart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пароль и юзера можно не указывать, если используется виндовая авторизация, и на всех машинах присутствует одинаковый пользователь с правами админа и одинаковым паролем.
Но попробывал добавил - рузьтат тот же.
Хотя ещё раз проверил даннык год в VB.NET с добавлением пассворда и юзера, там всё работает.
...
Рейтинг: 0 / 0
Run time error '3706'
    #32882791
Фотография Worobjoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может
;integrated security=SSPI
заменить на
;Persist Security Info=True
...
Рейтинг: 0 / 0
Run time error '3706'
    #32882810
Azart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И опять не помогает. Что то в корне не верно. А подгружать не чего ни надо, nипо(Imports System.Data)??
...
Рейтинг: 0 / 0
Run time error '3706'
    #32882944
Фотография Worobjoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здесь в меню Project\References ставятся галочки напротив
Microsoft ActiveX Data Ojbects 2.5 Library
Microsoft ActiveX Data Ojbects Recordset 2.5 Library
(версии могут быть другими)

Примеры строк подключения из работающих программ:
Provider=SQLOLEDB.1;Password=111;Persist Security Info=True;User ID=Юзер;Initial Catalog=БД;Data Source=Сервер

Provider=MSDataShape.1;Persist Security Info=True;Data Source=Сервер;User ID=Юзер;Password=111;Initial Catalog=БД;Data Provider=SQLOLEDB.1
...
Рейтинг: 0 / 0
Run time error '3706'
    #32883114
Azart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторMicrosoft ActiveX Data Ojbects Recordset 2.5 Library стоитгалочка
авторMicrosoft ActiveX Data Ojbects Recordset 2.5 Library при выборе орёт - Name conflicts with existing module, project or object library

Ищу в чём конфликт - пока без успешно!
...
Рейтинг: 0 / 0
Run time error '3706'
    #32883141
Фотография Worobjoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Значит стоит галочка еще на одной, на одноименной ссылке, но другой версии
...
Рейтинг: 0 / 0
Run time error '3706'
    #32883204
Azart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Worobjoff спасибо за помощь.
Убрал все галочки которые якобы не нужны - заработал коннект :).
Теперь проблема с заполнением датагрида.
Код: plaintext
1.
2.
3.
4.
Set rsCustomers = New ADODB.Recordset
        zapros = "SELECT * FROM Alarm"
        Set rsCustomers.ActiveConnection = conn
        rsCustomers.open zapros
        Set DGquery.DataSource = rsCustomers
Run time error '7004' the rowset is not bookmarkable.
...
Рейтинг: 0 / 0
Run time error '3706'
    #32883255
Фотография Worobjoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проблема в том, что по умолчанию рекордсет открывается как
rs.Open "SELECT . . . ", M3.Conn1, adOpenForwardOnly, adLockReadOnly
ForwardOnly - не может быть источником строк грида

надо вот так (один из вариантов)
rs.Open "SELECT . . .", M3.Conn1, adOpenStatic, adLockOptimistic, adCmdText
...
Рейтинг: 0 / 0
Run time error '3706'
    #32883433
Фотография Magnus23
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WorobjoffМожет
;integrated security=SSPI
заменить на
;Persist Security Info=True
Это кстати не одно и тоже. Первое - аутентикация виндовс, а второе, если не ошибаюсь запрет пересылки некодитэрованого пароля и логина по сети.
...
Рейтинг: 0 / 0
Run time error '3706'
    #32885593
Azart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да всё сделал - заработало. Уже не удивительно, но возникла другая ошибка. Запихал следующее в ДЛЛ.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
Public Function gettable(ByVal query As String) As ADODB.Recordset

        Dim conn As ADODB.Connection
        Dim rsCustomers As ADODB.Recordset
        Dim constr As String
        Dim zapros As String
        
        Set conn = New ADODB.Connection
        
        constr = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=OrwellDB;Data Source=HAMMER;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=HAMMER;Use Encryption for Data=False;Tag with column collation when possible=False"
        conn.open constr
        
        Set rsCustomers = New ADODB.Recordset
                     
        Set rsCustomers.ActiveConnection = conn
        rsCustomers.open query, conn, adOpenStatic, adLockOptimistic, adCmdText
               
        Set gettable = rsCustomers

    End Function

А из тестового приложения вызываю так.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Private Sub BSearch_Click()

        Dim otvet As query.Class1
        Dim getquery As String

        getquery = CStr(Tquery.Text)
        Set DGquery.DataSource = otvet.gettable(getquery)
End Sub

Результат Run time error '91' Object variable or With block variable not set
...
Рейтинг: 0 / 0
Run time error '3706'
    #32885602
Один
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Azart
А из тестового приложения вызываю так.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Private Sub BSearch_Click()

        Dim otvet As query.Class1
        Dim getquery As String

        getquery = CStr(Tquery.Text)
        'Set otvet = new query.Class1
   Set DGquery.DataSource = otvet.gettable(getquery)
End Sub

Результат Run time error '91' Object variable or With block variable not set
Забыли создать экземпляр otvet
...
Рейтинг: 0 / 0
Run time error '3706'
    #32885651
Azart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Большое спасибо.
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Run time error '3706'
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]