|
|
|
Recordset is not available
|
|||
|---|---|---|---|
|
#18+
Програмка пролежала на полке полгода, сейчас пришло время с ней возится. Проблема заключается в том, что если раньше всё более-менее работало, то сейчас один и тот же барьер. Итак, по порядку. Есть большая таблица (lsr). С помощью простого запроса SELECT lsr.* FROM lsr, [SELECT a.srn FROM adreses1 AS a WHERE a.rajons = 1]. AS b WHERE lsr.srn = b.srn ORDER BY lapas_num; из неё извлекаются все данные по значению одного из полей и показываются в форме. lsr, adreses1 - таблицы, lapas_num,srn,rajons - поля. Раньше можно было прямо из формы сквозь запрос изменять значения в таблице. Теперь вылетает ошибка "This recordset is not updatable". Как с этим бороться я пока не знаю. Таблицы берутся с sql сервера через odbc. На серваке стоят все пермишшаны. Какие есть общие и частные методы устранения сей неприятности? Так же есть и второй вопрос. Нужно сделать фильтр по значениям полей этого запроса. Я создаю ещё один запрос, где пишу всё что требуется и показываю это в форме. Вроде, SELECT * FROM qryLsr WHERE lapas_num > 150; Так ли надо делать или можно обойтись всё тем же запросом (добавить туда доп.условия) и вызывать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2003, 17:32 |
|
||
|
Recordset is not available
|
|||
|---|---|---|---|
|
#18+
С трудом верится в былую работоспособность. Запрос с подзапросом имхо никогда не был обновляемым. Один из вариантов, если работаешь c jet, переписать запрос с использование DLookup, например: SELECT lsr.* FROM lsr, DLookup("srn", "adreses1", "rajons = 1") AS b WHERE lsr.srn = b.srn ORDER BY lapas_num; Что касается второго вопроса, можно и так и так. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2003, 17:49 |
|
||
|
Recordset is not available
|
|||
|---|---|---|---|
|
#18+
Форму открыть отказывается напрочь. Зато, если первый запрос сделать таким (SELECT * FROM lsr;), то всё работает как положено. Раньше тот двойной запрос был разбит на два отдельных и всё бы ничего, если бы не скорость - раз в 10-15 медленнее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2003, 18:05 |
|
||
|
Recordset is not available
|
|||
|---|---|---|---|
|
#18+
Ничерта не понимаю. Поменял тот запрос на SELECT lsr.* FROM lsr WHERE srn in (SELECT adreses1.srn FROM adreses1 WHERE rajons = 1) ORDER BY lsr.lapas_num; Теперь в query design, после запуска запроса, можно изменять значения, а в форме всё равно не даёт. ps: мысли вслух :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2003, 11:24 |
|
||
|
Recordset is not available
|
|||
|---|---|---|---|
|
#18+
2 dead1 Привел два разных по-сущности запроса и уже вслух мыслить стал... Первый действительно не будет обновляемым, последний твой - обновляемый. Ты бы у формы проверил разрешения на изменения. Заодно приоткрыл бы тайну о версии Акеса и типа базы (mdb or adp). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2003, 11:46 |
|
||
|
Recordset is not available
|
|||
|---|---|---|---|
|
#18+
Ура. Заработало. (!!!) База mdb, Access 2000, все основные (публичные) таблицы хранятся на ms sql сервере. Мысли вслух могут у любого появится, если работа горит, а два с половиной дня оно не пашет ;) Конечно, очень странно, что раньше первый запрос работал. Может тогда линки стояли не на odbc, а на такие же mdb... Если бы он не работал, я бы его так не оставил. Между прочим, может они и разные, но данные выводили 100% идентичные. Но не работало при всех allow'сах, которые я тщательно проверял. Хорошо. А какая может быть разница в этих запросах, если один может, а другой не может? Что может мешать первому нормально работать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2003, 12:01 |
|
||
|
Recordset is not available
|
|||
|---|---|---|---|
|
#18+
pps : Пора мне ник менять, а то всё постоянно не работает :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2003, 12:02 |
|
||
|
Recordset is not available
|
|||
|---|---|---|---|
|
#18+
Специально проверил Код: plaintext 1. 2. 3. 4. 5. 6. 7. работает и обновляет и Код: plaintext 1. 2. 3. 4. 5. Работает и обновляет, если выставить "Тип набора записей" в "Динамический не согласованный" (у формы и запроса) Так что IgorM оказался не прав, ну и я за компанию. ПРОСТИТЕ, братцы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2003, 12:12 |
|
||
|
|

start [/forum/topic.php?fid=45&msg=32158915&tid=1681542]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
250ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
65ms |
get tp. blocked users: |
2ms |
| others: | 213ms |
| total: | 573ms |

| 0 / 0 |
