Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Ошибка открытия ADODB.Recordset
 
 автор: Nikolai_Syn   (27.12.2006 в 12:09)   личное сообщение
 
 

Работаю в Access 2003, база в формате Access 2000.


    Dim rstMain As ADODB.Recordset   
    Set rstMain = New ADODB.Recordset
    str = "select main.id, parents.pid As PID, parents.position As POS from main INNER JOIN parents ON main.id = parents.id where main.entity = 'Card'"
    
    rstMain.CursorLocation = adUseClient
    rstMain.Open str, CurrentProject.Connection, adOpenKeyset, adLockOptimistic


Все работало, потом поменял запрос и работать перестало... Сам запрос в конструкторе читается и выполняется.

Ошибка Method Open of object _Recordset failed.

Пробовал полный импорт таблиц и модулей в пустую базу, не помогло.
Подскажите, как быть. Код ошибки 80004005

  Ответить  
 
 автор: osmor   (27.12.2006 в 12:25)   личное сообщение
 
 

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

  Ответить  
 
 автор: Nikolai_Syn   (27.12.2006 в 15:23)   личное сообщение
 
 

Точно, с квадратными скобками заработало...
глючный Access, явно указаны таблицы, в кот-х эти поля, нет рус. букв или пробелов.

Наличие или отсутствие точки с запятой вроде неважно.

  Ответить  
 
 автор: alecks_lp   (27.12.2006 в 13:09)   личное сообщение
 
 

1 Попробуйте в конце инструкции поставить точку с запятой ";"
2. Если не поможет, откройте запрос в конструкторе и сохраните его(Например:zapros). Потом:
str = "SELECT * FROM zapros;"

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList