Помогите пожалйста DataGrid+AdoDC

Работа VB и СУБД (Access, MSSQL, MySQL, Oracle и пр.)
Правила форума
При создании новой темы не забывайте указывать используемую СУБД.
XakerVB
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 01.03.2006 (Ср) 12:45
Откуда: Минеральные Воды

Помогите пожалйста DataGrid+AdoDC

Сообщение XakerVB » 01.03.2006 (Ср) 12:51

У меня такая проблема:
в своей проге я подключил через мастер FormWizard две таблицы БД Access. Я не могу разобраться как сделать динамический путь к БД. Он запоминает один и потом матом кроет, если по этому пути не может найти БД. Я удалил эту форму, создал свою, и разместил на ней DataGrid и AdoDC. При попытке задать свойство ConnectionString он мне говорит, что не найдена БД с путём который был прописан на форме созданной мастером.
как быть?
:cry:

VVitafresh
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1641
Зарегистрирован: 12.05.2005 (Чт) 14:44
Откуда: Херсон, UA

Сообщение VVitafresh » 01.03.2006 (Ср) 15:08

Не используй элемент Data (AdoDC).
Почитай в MSDN про ADODB.Connection и ADODB.Recordset (или в поиске).
Никакую проблему невозможно решить на том же уровне, на каком она возникла. Нужно стать выше этой проблемы, поднявшись на следующий уровень.

XakerVB
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 01.03.2006 (Ср) 12:45
Откуда: Минеральные Воды

Сообщение XakerVB » 03.03.2006 (Пт) 10:15

VVitafresh

Спасибо, эту ошибку я устранил, но возникла другая, связанная с правами доступа. В ADODC есть свойсво User(аутентификация при подключении), там надо указывать владельца БД. Н о какого бы я владельца не указывал, у меня выдаёт сообщении:

Системная БД не найдена или использует монопольный доступ другим пользователем.

VVitafresh
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1641
Зарегистрирован: 12.05.2005 (Чт) 14:44
Откуда: Херсон, UA

Сообщение VVitafresh » 03.03.2006 (Пт) 13:26

XakerVB писал(а):Системная БД не найдена или использует монопольный доступ другим пользователем.

Проверь, чтобы база действительно не была открыта кем-то в монопольном режиме.
Попробуй подключиться одним из способов:
Код: Выделить всё

'sPth - Путь к базе
'sPwd - Пароль на отркрытие

Set OpenCnAccess = New ADODB.Connection       'Создаем новый экземпляр
   
'    **** Подключение через драйвер Microsoft Access Driver (*.mdb)
    sCnDb = "Driver={Microsoft Access Driver (*.mdb)};" & _
        "Dbq=" & sPth & ";Uid=Admin;Pwd=" & sPwd & ";"
    OpenCnAccess.CursorLocation = adUseClient     'Cursor Location
    OpenCnAccess.Open sCnDb                       'Open Connection
   
'    **** Подключение через драйвер Microsoft.Jet.OLEDB.4.0
'    OpenCnAccess.CursorLocation = adUseClient
'    OpenCnAccess.Provider = "Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database Password=" & sPwd
'    OpenCnAccess.Open "Data Source=" & sPth

Как создавать рекордсет (ADODB.Recordset) я думаю ты разобрался :wink:
Никакую проблему невозможно решить на том же уровне, на каком она возникла. Нужно стать выше этой проблемы, поднявшись на следующий уровень.

XakerVB
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 01.03.2006 (Ср) 12:45
Откуда: Минеральные Воды

Сообщение XakerVB » 06.03.2006 (Пн) 8:54

спасибо большое! :D


Вернуться в Базы данных

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3

    TopList