All Forums
 Категория Visio
 Форум Вопросы и ответы
 Не могу соединиться с БД
Author Previous Topic Topic Next Topic  

zeisig

5 Posts

Posted - 09/12/2004 :  15:15:57
Здравствуйте,
буквально сегодня начал программировать c VISIO 2003 и конечно же сразу проблемы. Материала почитать у меня нет.
Вот такой код:
Sub Zugriff()
Dim cnn As ADODB.Connection
Dim rs As ADODB.Recordset
Set cnn = New ADODB.Connection
Set rs = New ADODB.Recordset
cnn.Open CurrentProject.Connection
rs.Open "SELECT * FROM Mitarbeiter", cnn
MsgBox rs.GetString
rs.Close
cnn.Close
Set cnn = Nothing
Set rs = Nothing
End Sub



Вот такая ошибка:
Не определён тип.
То есть компилятор не узнает тип ADODB, как я понял. Я вроде все галочки проставил, а именно напротив
Microsoft ADO Ext.2.7 for DDL and Security
и
Microsoft DAO 3.6 Object Library
а всё равно не идёт.
Что мне нужно сделать

Tumanov

Russia
1198 Posts

Posted - 09/12/2004 :  20:02:09
Надо читать, как работает ADODB. Visio к этим ошибкам пока не имеет отношения. Немного могу пояснить:
1. CurrentProject - это из области Access. В Visio ничего похожего нет - нужно просто открывать новый Connection. При работе через ODBC это может выглядеть, например, как
cnn.Open "ops"
2. Для подключения ADODB нужно использовать что-то вроде Microsoft ActiveX Data Objects 2.5 Library, а совсем не DAO или ADO Ext.
А остальное вроде работает...
Go to Top of Page

zeisig

5 Posts

Posted - 09/12/2004 :  21:29:47
Я этот код взял из одного пособия по VISIO 2000, должно вроде как функционировать.
Microsoft ActiveX Data Objects 2.5 Library я добавил, ошибка исчезла,
но теперь не хватает какого-то обьекта(новая ошибка)
Нельзя ли по-подробнее про установление нового Connection?
База данных - ACCESS, называется db1.mdb
Может каких-то настроек не хватает?
Go to Top of Page

Tumanov

Russia
1198 Posts

Posted - 09/13/2004 :  04:34:46
CurrentProject адресуется к текущему проекту, то есть к открытой в настоящий момент базе Access, когда Вы работаете в Access. В данном случае код работает в Visio, значит это не подходит.
Настройте ODBC, присвойте Вашей базе псевдоним, например "arbeiter" и открывайте соединение как cnn.Open "arbeiter". Вот и все.
Работать можно не только через ODBC, но там объяснять гораздо дольше - лучше читать документацию. Найдите любую книжку, где рассказывается про ADODB, в том же Accesse наконец...
Go to Top of Page
  Previous Topic Topic Next Topic  
Данный сайт является архивом форума visio.artberg.ru, который был закрыт в связи с переходом на новую платформу visio.getbb.ru
Все материалы доступны только для чтения! Если у вас появились вопросы, или вы хотите что-то обсудить, связанное с Visio, обращайтесь на новый форум!
Архив был создан благодаря совместным усилиям Генадия Туманова @Tumanov (visio.artberg.ru), Александра ака @Surrogate (visio.getbb.ru), и Николая Белых @nbelyh (unmanagedvisio.com)