Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Error 3020 / 13 сообщений из 13, страница 1 из 1
15.05.2003, 11:47
    #32160426
dead1
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Error 3020
Как-то подозрительно молчит, либо ругается аксес на таких вещах :

Форма берёт данные из таблицы "op_sub". При нажатии на кнопку выполняется функция из отдельного модуля. В этом модуле я, наверняка неправильно, открываю recordset вот так :
Set rs = currentdb.tabledefs(TableName).OpenRecordset
Грубо говоря, нужно присвоить значение одного текстового поля таблицы в другое. Где-то вот так :
rs.Fields("AliasLaukums").Value = rs.Fields("Laukums").Value
Выводит такую ошибку :
Run-time error 3020 :
Update or CancelUpdate without AddNew or Edit.

Вижу несколько причин - (а) что-то с параметрами OpenRecordset (я их просто не знаю) (б) именно так не надо присваивать значения (в) нет возможности из модуля добраться до формы и её значений, вроде me.aliaslaukums = me.laukums. Вернее, я не знаю как.

Есть ли варианты решений и какие?

Хелп у меня почти не работает и абсолютно пустой (больше половины функций не показывает). База mdb, access 2k.
...
Рейтинг: 0 / 0
15.05.2003, 11:49
    #32160432
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Error 3020
rs.Edit забыл. А потом rs.Update
...
Рейтинг: 0 / 0
15.05.2003, 11:57
    #32160448
Хам трамвайный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Error 3020
только бросайте
манеру добалять записи
в таблицу через рекордсет
для этого есть
запрос на добавление
...
Рейтинг: 0 / 0
15.05.2003, 12:02
    #32160456
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Error 3020
2 Хам
Открою страшный секрет. Есть еще запрос на изменение и запрос на удаление.
Чем же тебе рекордсет так насолил? Как в конктретном случае удобнее - так и правильнее добавлять.
...
Рейтинг: 0 / 0
15.05.2003, 12:05
    #32160464
dead1
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Error 3020
О как всё просто! Спасибо, Л.П.!

2 Хам трамвайный
Я знаю, что это не хорошо, но я делаю фильтр, который будет сам создавать sql-строки. Поэтому, для хранения сложных условий с полями, действиями и значениями использую временную таблицу. А что делать?...
...
Рейтинг: 0 / 0
15.05.2003, 12:19
    #32160484
Хам трамвайный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Error 3020
есть в табле 7000000 записев
открывая рекордсет
с таким количеством записев
вас просто скрючит
запросы не зря придуманы
...
Рейтинг: 0 / 0
15.05.2003, 12:23
    #32160490
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Error 3020
Открывай его AppendOnly, и условие Where False не забудь
...
Рейтинг: 0 / 0
15.05.2003, 12:30
    #32160508
Senin Viktor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Error 3020
2 Хам трамвайный
>запросы не зря придуманы

А если использовать Where при открытии набора?
То о каких 7000000 записей будет идти речь?
Правда, в примере, открывалась вся таблица целиком, но что ж, может ему это и надо...

ИМХО, Кесарю кесарево. Кому r.UpDate, а кому "Update Tabl1...Set..."
Надо смотреть по-обстоятельствам.
Нюансов много, все зависит от логики и способностях программера.
...
Рейтинг: 0 / 0
15.05.2003, 12:31
    #32160511
Senin Viktor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Error 3020
2 Лоху

>AppendOnly

Не напутал? Для редактировнаия и AppendOnly?
...
Рейтинг: 0 / 0
15.05.2003, 12:34
    #32160514
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Error 3020
2 Сенин Виктор
Хам протестует против использования рекордсетов для добавления . Поэтому AppendOnly.
...
Рейтинг: 0 / 0
15.05.2003, 12:43
    #32160534
Senin Viktor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Error 3020
2 Лоху

А! Понял!
Сперва Хам не понял, затем я
...
Рейтинг: 0 / 0
15.05.2003, 13:03
    #32160572
Хам трамвайный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Error 3020
я все это говорил
только к конкретному
вопросу
"добавление записей
в полностью
открытой таблице"
...
Рейтинг: 0 / 0
18.05.2003, 11:22
    #32162436
grig_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Error 3020
currentdb.execute("update TableName set AliasLaukums = Laukums where ID = 6542754")

ID - Любое уникальное поле в TableName
6542754 - значение этого поля
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Error 3020 / 13 сообщений из 13, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]