Сейчас попробовал с Access-ом (ибо давно с ним уже не работаю).
Сам-то Recordset, как и следовало ожидать, получается обновляемый - с ним все нормально. В него записи добавляются и редактируются.
А вот форма, которой он присваивается, действительно открывается как необновляемая. В чем тут дело на скорую руку непонять - ибо влезать опять в потроха Access-a и экспериментировать совершенно нехочется. Может еще кто подскажет...
Код в форме пробовал такой:
- Код: Выделить всё
Private Sub Form_Load()
Dim cn As New ADODB.Connection
Dim r As New ADODB.Recordset
cn.Provider = "Microsoft.Jet.OLEDB.4.0"
cn.Open "Data Source=" & CurrentProject.Path & "\Table.mdb"
r.Open "SELECT * FROM [Table]", cn, adOpenStatic, adLockOptimistic
Set Recordset = r
End Sub
Да, если этот код заменить на
RecordSource = "SELECT Table.* FROM [Table] IN 'Table.mdb'"
То форма редактируется нормально.
В принципе запрос может включать таблицы из нескольких баз.
Может этого для тебя и будет достаточно.
P.S. Беги от этого Access-a при первой возможности иначе чем дальше тем больше подобных ограничений будет попадаться...
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...