|
|
|
| Работаю в 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 | |
|
| |
|
|
|
| смею предположить, что не понимает имен полей
попробуйте все названия полей взять в квадратные скобки | |
|
| |
|
|
|
| Точно, с квадратными скобками заработало...
глючный Access, явно указаны таблицы, в кот-х эти поля, нет рус. букв или пробелов.
Наличие или отсутствие точки с запятой вроде неважно. | |
|
| |
|
|
|
| 1 Попробуйте в конце инструкции поставить точку с запятой ";"
2. Если не поможет, откройте запрос в конструкторе и сохраните его(Например:zapros). Потом:
str = "SELECT * FROM zapros;" | |
|
| |