powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Recordset
73 сообщений из 73, показаны все 3 страниц
Recordset
    #32166188
Jem
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dim rst as ADODB.Recordset
Dim intA as Integer
Set rst=Me.Recordset
Rst.AddNew
Rst!FK=IntA
Rst.Update
Пишет ошибку:
"Key value for this row was changed or deleted at the data store. The local row is now deleted"
Дело в том что я пытаюсь добавить строку в таблицу но ничего не получается.
Unique table указана
М если попытаться добавить эти значения в таблицу то все работает нормально.
Проблемма появилась после установки Office Xp вместо 2000
Спасибо.
...
Рейтинг: 0 / 0
Recordset
    #32166202
Хам трамвайный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
см. справку "AddNew Method"
...
Рейтинг: 0 / 0
Recordset
    #32166227
Jem
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 XAM
И что там есть такого что я не делаю по-твоему?
...
Рейтинг: 0 / 0
Recordset
    #32166230
Хам трамвайный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есть
и я вижу
а ты, судя по вопросу,
не увидел
а жаль
...
Рейтинг: 0 / 0
Recordset
    #32166238
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Догадываюсь, что дело в названии поля FK. Аксесс думает, что это сокращение от F#CK, и ругается в ответ.
...
Рейтинг: 0 / 0
Recordset
    #32166243
Jem
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Самле прикольное не сказал еще.
Как вы поняли у меня ADP, так вот ошибка эта хоть и появляется но запись в таблицу добавляется успешно. То есть проблеммы с целостностью нет.
А вот форма не хочет этого понять, а так рекордсет на форме основан то вимдимо проблемма в форме она не дает нормально пройти методу update.
Вот такие пироги
...
Рейтинг: 0 / 0
Recordset
    #32166261
V. Motchulsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ох, как народ любит рекордсеты...
...
Рейтинг: 0 / 0
Recordset
    #32166272
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Ох, как V. Motchulsky не любит рекордсеты...
...
Рейтинг: 0 / 0
Recordset
    #32166276
Хам трамвайный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не то слово
ОБОЖАЕТ
прям ТАЩИТСЯ
хоть бы справку
читали бы
так нет: вынь да положь
...
Рейтинг: 0 / 0
Recordset
    #32166286
V. Motchulsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, я никак не пойму, куда приведенный автором код можно приткнуть. Какая же главная цель приследуется?
...
Рейтинг: 0 / 0
Recordset
    #32166320
Jem
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Хам ты сам то гуру хренов!!
Где ошибка в коде ты конкретно покажи, умник!
Всем остальным:
inta = 1
к примеру. но запись добавить не удается!
Выскакивает ошибка (см. выше)
Зачем мне рекордсет здесь я объяснять не буду, вариант описанный в коде упрощенный.
Если кто-то сталкивался с подной ошибкой то скажите каковы причины ее появления?
Еще раз повторюсь
ADP, запись при использовании кода в таблицу добавляется!!, однако ошибка выскакивает, видимо не дает форма.
Спасибо
...
Рейтинг: 0 / 0
Recordset
    #32166324
V. Motchulsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Триггеры на таблице есть?
...
Рейтинг: 0 / 0
Recordset
    #32166329
Jem
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нету.
Данные в форму заносятся хранимой процедурой с параметром.
UniqueTable указанна
Поле FK принадлежит таблице которая указанна в UniqueTable то есть редактировать запись можно, да и ошибка бы была другая.
В 2000 офисе все было тоже самое, однако работало без ошибки, может в форме есть еще что то что я не указал?
Спасибо
...
Рейтинг: 0 / 0
Recordset
    #32166338
V. Motchulsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Надо посмотреть в Profiler'е, какие запросы генерируются к серверу, может что-то прояснит.
...
Рейтинг: 0 / 0
Recordset
    #32166341
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
А Хам-то ответит нам или будет продолжать издеваться?
...
Рейтинг: 0 / 0
Recordset
    #32166349
Jem
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 V. Motchulsky
Ок. спасибо буду думать.
Вообще странная ошибка я такой не разу не видел
...
Рейтинг: 0 / 0
Recordset
    #32166350
Jem
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Владимир Саныч, нет он не ответит он справку читает. :))
...
Рейтинг: 0 / 0
Recordset
    #32166362
Хам трамвайный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
блин, на фиг вот
из-за вашего рекодсета
вышибло аксесс
пока твой код проверял
сколько раз говорил
не пользуйте рекодсет
форм для добавления
или обновления
записей
так нет же
прет вас
достало уже
хотя могу заметить (прищуриваясь)
что строка добавилась
без вопросов и сообщений
...
Рейтинг: 0 / 0
Recordset
    #32166368
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Хам прищурился. Хорошая примета. Скоро говорить начнет.
...
Рейтинг: 0 / 0
Recordset
    #32166370
V. Motchulsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Думаю, там примерно такой алгоритм общения с сервером.
Update MyTable Set FK=123
Select * From MyTable WHERE FK=.... Скорее всего не 123
...
Рейтинг: 0 / 0
Recordset
    #32166375
Хам трамвайный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
естли еще
кто-нить
спросит по поводу
обновления рекордсета
формы для adp-
объявлю стрелку
для разборов
...
Рейтинг: 0 / 0
Recordset
    #32166378
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Люди, ща хамить буду. Заразился, видать.

Хам, тебе лично этого вопроса не задавали и за язык не тянули. Ты сам заявил, что знаешь ответ. Ну и какое удовольствие ты от этого получаешь?

Вот. Ну как я в роли самозванного хама?
...
Рейтинг: 0 / 0
Recordset
    #32166380
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ААААААА была не была
Как использовать св-во Me.Recoredset для обновления данных в форме?
Хам, забивай стрелу. На какой трамвайной остановке биться будем?
...
Рейтинг: 0 / 0
Recordset
    #32166386
Хам трамвайный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
на второй от
Павелецкого вокзала
в сторону Варшавки
Гетца с собой
приведу и Виктора
Сенина
...
Рейтинг: 0 / 0
Recordset
    #32166390
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Будет толпа зрителей. На Гетца придут глядеть
Чтобы друг друга узнать - я буду на коньках, поверх брюк будут надеты оранжевые семейные трусы, в левой руке - пять утюгов.
...
Рейтинг: 0 / 0
Recordset
    #32166398
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Я на стороне Лоха. Приметы: под левым глазом фингал, на брюхе портрет Изи Рабиновича.
...
Рейтинг: 0 / 0
Recordset
    #32166401
incold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Jem
Хам, кстати хамит не зря.
Работать с формой через рекордсет в ADP - это неудавшийся переход с MDB, ну как в анекдоте про Чукчу, который бензопилой лес пилил, а потом узнал, что она еще и включается.
...
Рейтинг: 0 / 0
Recordset
    #32166405
Jem
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Создал новый ADP проект, импортировал туда базу.
Однако не помогло..
Посмотрел profiler но там не очень понятно может поможите?
зачем вызывается процедура
sp_prepare
Возвращаемое ей значение присваивается переменной Р1, затем вызывается
еще ряд процедур
а потом идет то о чем вы уже сказали
Select _,_,_,_, FROM _ WHERE FK=@P1
блин :(
...
Рейтинг: 0 / 0
Recordset
    #32166410
V. Motchulsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если пропустит таможня, приведу цензурщика, который предявит требование к Гетцу, убрать со страниц слово Recordset
...
Рейтинг: 0 / 0
Recordset
    #32166412
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
2 incold:

Вся эта лирика понятна. Некрасиво, немодно, не, не, не. Только вопрос в другом. Вопрос - почему не работает. Хам делает вид, что знает ответ.
...
Рейтинг: 0 / 0
Recordset
    #32166414
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
2 V. Motchulsky:

Может, вообще запретить VBA? И писать одни макросы.
...
Рейтинг: 0 / 0
Recordset
    #32166415
Jem
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да блин я не спорю все вы молодцы!! :)) Особьенно чукча!! А хам еще велел идти справку читать! Там что написано что работать через рекордсет в adp это гимор!!??!? А ну его в ..... этот рекордсет буду через хп все делать.
Только как данные в форме обновлять? неужели так:
Me.RecordSource=Me.Recordsource ?
Или это тоже пережиток MDB??
...
Рейтинг: 0 / 0
Recordset
    #32166417
Хам трамвайный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
именнннно так и обновляй
а что тебе мешает
вносить данные
прямо в форму?
...
Рейтинг: 0 / 0
Recordset
    #32166424
V. Motchulsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Me.Requery
...
Рейтинг: 0 / 0
Recordset
    #32166426
incold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Владимир Саныч
Дело в том, что не, не, не
а в том что вот такие проблемы через каждую новую форму возникают.
А чтобы заработало, переделать без использования рекордсет.

2 Jem
параметр для процедуры это что?
в процедуре есть установка опции Set nocount On?
строка синхронизации на форме есть?
...
Рейтинг: 0 / 0
Recordset
    #32166428
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
(В сторону.)

Не, ну почему из багов Майкрософта делают священную идеологию?
...
Рейтинг: 0 / 0
Recordset
    #32166437
V. Motchulsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может, вообще запретить VBA? И писать одни макросы.
Я бы с радостью и VBA и макросы - настальгия по Turbo Pascal, где были нормальные объекты, нормальные циклы, можно было создать библиотеку пользовательских функций.
...
Рейтинг: 0 / 0
Recordset
    #32166440
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Хаму\r
>Гетца с собой \r
приведу и Виктора \r
Сенина\r
\r
После того как выяснилось, что Гетц он облажался (/topic/32819), я его собой на стрелку на трамвайной остановке не возьму - а прийдет самостоятельно - буду бить, и вполне возможно, ногами \r
\r
А по поводу рекодсета, вроде все логично, что выдает ошибку.\r
У Jem получается два редактируемых набора: один родной - от формы, другой rst. И когда ты обновляешь rst, то он Акес и сообщает, что строка из родного набора формы была изменена. Попробуй\r
или как тут насоветовали\r
или через RecordSetClone\r
или просто возьми и измени \r
Me("FK").Value=IntA\r
RunCommand accmdSaveRecord
...
Рейтинг: 0 / 0
Recordset
    #32166453
Фотография Pavel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Извините что вмешиваюсь, а позвольте поинтерисоваться, команда синхронизации прописана?
...
Рейтинг: 0 / 0
Recordset
    #32166458
Хам трамвайный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
разговор ни о чем
пошел.
выяснили, что код
работает и что после
него аксесс вышибает
и что рекордсет формы
не надо использовать,
потом пошла болтовня,
потому как автор
вопроса так и не
сказал что он хочет
получить
...
Рейтинг: 0 / 0
Recordset
    #32166464
Фотография Pavel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
потому как автор
вопроса так и не
сказал что он хочет
получить

И то верно. А корни проблемы, скорее всего, в смене версии MDAC. Хорошо бы код ХП в студию.
...
Рейтинг: 0 / 0
Recordset
    #32166469
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
> У Jem получается два редактируемых набора: один родной - от формы, другой rst.

А вот это уже ответ!!!

> потому как автор
> вопроса так и не
> сказал что он хочет
> получить

а
это
попы
тка
перел
ожить
про
блему
с
больной
головы
на
здоровую
...
Рейтинг: 0 / 0
Recordset
    #32166479
Jem
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Строка синхронизации не прописана!
По не знанию я ее не прописал.
Ведь строка синхронизации это SQL запрос, а в книжках везде насоветовано, использовать запросы которые сохраненны на сервере, для быстрейшего их выполнения, и еще я не знаю толком если пользователи будут иметь доступ только на выполнение хп а доступ к таблицам будет запрещен то как тогда будет работать строка синхронизации, и еще у геца написано что строка нужна для правильного отображения данных в форме после изменения значения ключа, о не написано что будут ошибка., и еще если вызвать Me.Requery то тогда зачем строка синхронизации.
Всем остальным:
Про использование двух наборов это скорее всего не так!
Сами подумайте когда мы пишем
Set rst=Me.Recordset
мы не создаем новый объект данных! Мы делаем ссылку на существующий!!
Соответсвенно конфликтов быть не должно, при работе как через рекордсет так и через форму мы редактируем одни и теже данные.
...
Рейтинг: 0 / 0
Recordset
    #32166480
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я сам часто ради интереса (когда время есть) начинаю мучать акес на предмет разных фитч.
Рекодсеты на форму я буду мучать в самую последнюю очередь, ибо не доконца понимаю их выгодность по сравнению с другими средствами.
...
Рейтинг: 0 / 0
Recordset
    #32166486
Jem
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Senin Viktor
Если говорить про MDB, то без рекордсета, насколько я понимаю нельзя осуществить работу с данными формы внутри транзакции к примеру..
...
Рейтинг: 0 / 0
Recordset
    #32166500
Хам трамвайный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пока вы тут болтали
создал 3 формы
на основе ХП
с обновляемыми записями
и делаю это уже
как 2 года: легко инепринужденно
я не пойму: чево Jem мучается ?
...
Рейтинг: 0 / 0
Recordset
    #32166504
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Хам, ты говорил, что знаешь ответ.
...
Рейтинг: 0 / 0
Recordset
    #32166506
Jem
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Хам скажи что пишешь в строку синхронизации? Если пишешь конечно?
...
Рейтинг: 0 / 0
Recordset
    #32166508
Хам трамвайный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ответ на что?
я вопроса не вижу
у меня все работает
...
Рейтинг: 0 / 0
Recordset
    #32166509
Фотография Pavel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А я вот кажется знаю. Дай права на чтение ключевого поля таблицы, и все заработает.
...
Рейтинг: 0 / 0
Recordset
    #32166512
incold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Jem
На той информации которая есть полностью повторил
Ни в 2000 ни 2002 ошибки нет.

Такая ошибка была когда в триггере на таблицу, в которую добавляешь запись не было строки
Set Nocount On
...
Рейтинг: 0 / 0
Recordset
    #32166513
Фотография Pavel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А в качестве команды синхронизации прекрасно работает хп с параметром.
...
Рейтинг: 0 / 0
Recordset
    #32166514
Хам трамвайный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
http://hiprog.com/access/article.asp?id=368
...
Рейтинг: 0 / 0
Recordset
    #32166516
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2Jem
>Если говорить про MDB, то без рекордсета, насколько я понимаю нельзя осуществить работу с данными формы внутри транзакции к примеру..

Ну, во первых я говорил про присваивание Set Me.Recordset=rs.
Во-вторых, транзакции внутри формы нужны (если конечно отбросить Акес, который все-таки свои операции делает в неявных транзакциях) только при наличи подчиненых форм, что легко организуется и без использования Set Me.Recordset=rs. К тому же, если говорить о adp, то случаи, когда нужно выполнения транзакции имеено на клиенте, мне лично, слабо представляются.
Хотя, возможно, я не сталкивался с такими задачами...

Jem, приведи пример, когда тебе нужна транзакция в форме, и будет несколько решений без использования "Set Me.Recordset=rs"
...
Рейтинг: 0 / 0
Recordset
    #32166517
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Хам: см. справку "AddNew Method"
Jem: И что там есть такого что я не делаю по-твоему?
Хам: есть и я вижу а ты, судя по вопросу, не увидел а жаль
...
Рейтинг: 0 / 0
Recordset
    #32166522
Хам трамвайный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
к ВС:
там есть пример
добавления записей
не через существующий
рекордсет
а НОВЫЙ
тогда и глюков не будет
...
Рейтинг: 0 / 0
Recordset
    #32166528
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Слава Аллаху, всемилостивейшему и всемогущему! Хам заговорил!
...
Рейтинг: 0 / 0
Recordset
    #32166529
Хам трамвайный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я еще и крестиком
вышивать умею
...
Рейтинг: 0 / 0
Recordset
    #32166569
Jem
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Senin Viktor
Согласен.
2 ALL


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
CREATE TABLE [Cust] 
([IdCust] [int] IDENTITY ( 1 ,  1 ) NOT NULL ,
[Name] [char] ( 10 ) COLLATE Cyrillic_General_CI_AS NULL ,
CONSTRAINT [PK_Cust] PRIMARY KEY ([IdCust]	)

INSERT INTO Cust (Name) VALUES ('Хам')

CREATE TABLE [MySale] 
([IdSale] [int] IDENTITY ( 1 ,  1 ) NOT NULL ,
[IdCust] [int] NOT NULL , [Summa] [money] NULL ,
CONSTRAINT [PK_MySale] PRIMARY KEY  ([IdSale]),
СONSTRAINT [FK_MySale_Cust] FOREIGN KEY 
([IdCust]) REFERENCES [Cust] ([IdCust])


CREATE PROCEDURE prTest
AS
SELECT dbo.MySale.Summa, dbo.MySale.IdCust, dbo.Cust.Name
FROM dbo.Cust INNER JOIN
dbo.MySale ON dbo.Cust.IdCust = dbo.MySale.IdCust


Создаем форму:
Источник записей: prTest
Уникальная таблица: Mysale
Код на кнопке формы:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Private Sub Кнопка6_Click()
Dim rst As ADODB.Recordset
Set rst = Me.Recordset
With rst
    .AddNew
    !IdCust =  1 
    !Summa =  350 
    .Update
End With
End Sub

Ошибка таже! Может я конечно по запаре притупил, посмотите свежим взглядом.
Обращу также внимание еще раз на то что
ошибка выскакивает, данные в форме не добавляютя однако если на серваке открыть таблицу то все в порядке строчка добавилась.
Соответсвенно проблема в форме.
Вроде все
...
Рейтинг: 0 / 0
Recordset
    #32166577
Фотография Pavel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
CREATE PROCEDURE prTest_resync @IdSale Int
AS
SELECT dbo.MySale.Summa, dbo.MySale.IdCust, dbo.Cust.Name
FROM dbo.Cust INNER JOIN
dbo.MySale ON dbo.Cust.IdCust = dbo.MySale.IdCust
WHERE (dbo.MySale.IdSale = @IdSale)


В форме в команде синхронизации напиши
Код: plaintext
prTest_resync ?
...
Рейтинг: 0 / 0
Recordset
    #32166591
incold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alter PROCEDURE prTest
AS
set nocount on
SELECT dbo.MySale.Summa, dbo.MySale.IdCust, dbo.Cust.Name, dbo.MySale.[IdSale]
FROM dbo.Cust INNER JOIN
dbo.MySale ON dbo.Cust.IdCust = dbo.MySale.IdCust


строка синхронизации


SELECT dbo.MySale.Summa, dbo.MySale.IdCust, dbo.Cust.Name, dbo.MySale.[IdSale]
FROM dbo.Cust INNER JOIN
dbo.MySale ON dbo.Cust.IdCust = dbo.MySale.IdCust where dbo.MySale.[IdSale]=?
...
Рейтинг: 0 / 0
Recordset
    #32166602
Фотография Pavel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не нужен тут Set Nocount
...
Рейтинг: 0 / 0
Recordset
    #32166637
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2ALL
я может быть уже поздно, но..

Dim rst as ADODB.Recordset
Dim intA as Integer
set rst= New ADDB.Recordset
так Гетц советует. и кажется это очень правильно. у меня это оказывало влияние на работу ADP

Set rst=Me.Recordset
Rst.AddNew
...
Рейтинг: 0 / 0
Recordset
    #32166650
incold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Jem
Чем код отличается от такого?
DoCmd.GoToRecord acDataForm, Me.name, acNewRec
Me.IdCust = 1
Me.Summa = 350
DoCmd.RunCommand acCmdSelectRecord
для чего использовать рекордсет?

ошибка "Key value for this row was changed or deleted at the data store. The local row is now deleted" возникает на
связке Access XP+SQL 7.0
если Access XP+SQL 2000 или Access 2000+SQL 7.0 - то этой ошибки нет
подозреваю, что если на компьютер поставить последний MDAC, то и Access XP+SQL 7.0 все будет работать.

2 Pavel
Не нужен тут Set Nocount
В данном случае может быть и не нужен, но я себе поставил за правило, все процедуры и триггеры начинать с установки этой опции. А то потом вот так же как автор этого топика решаешь проблемы которых на самом деле не должно быть.
Приведу пример:
есть ленточная форма на таблицу, в таблице триггер правит записи в другой таблице, так вот пока в триггере не поставил Set Nocount On
выдавалось сообщение похожее как у автора этого топика.
...
Рейтинг: 0 / 0
Recordset
    #32166651
Jem
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Pavel
Ваша команда синхронизации должна выполниться быстрее ведь так?
Просто писать в строке SQL запрос (он у меня достаточно сложный) может затянуть выполнение синхронизации. Я про это писал выше, мне кажется что лучше выполнить ME.Requry формы что должно по идее вызвать хп вновь, чем выполнять при синхронизации неоптимизированный запрос, но это только догадки..
2 Вадя
Мне кажется Гетц так не советует, по логике ООП строка
set rst new ADODB.Recordset
лишняя
...
Рейтинг: 0 / 0
Recordset
    #32166653
incold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Jem
Requery и ResyncCommand это разные вещи
...
Рейтинг: 0 / 0
Recordset
    #32166689
Фотография Pavel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Jem
Команда синхронизации формы затрагивает только одну запись, тогда как requery - все.
команда синхронизации в виде хп отработает быстее запроса, т.к. хранится на сервере в откомпилированном виде. Кроме того, использование хп позволяет ограничить доступ непосредственно к таблицам.
вадя
В сдучае явного присваивания рекордстета никаких NEW не нужно. NEW исрользуется для явной инициализации нового рекордсета. В случае Set rs = Me.Recordset просто рождается ссылка на существующий обьект, новый не создается.
incold
С Set Nocount On все предельно просто - после любой операции с данными MSSQL возвращает строчку с указанием количество затронутых операцией записей. Set Nocount On подавляет это сообщение. Если процедура или триггер (в любой комбинации) возвращает эту строчку до интересующего набора записей, то возникает ошибка.
...
Рейтинг: 0 / 0
Recordset
    #32166769
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2Jem
>"Key value for this row was changed or deleted at the data store. The local row is now deleted"

Что-то я в MSDN ничего про эту ошибку не нашел.
Приведи ее полный текст, номер и прочую инфу. Может эта проблема давно решена каким-нить сервис-паком, а мы тут лбами бьемся.
Поищи на support.microsoft.com описание. Чего гадать-то?
...
Рейтинг: 0 / 0
Recordset
    #32167717
Фотография Pavel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Заглохла ветка что-то...
...
Рейтинг: 0 / 0
Recordset
    #32167742
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а у формы стоит "разрешить добавление=да"
...
Рейтинг: 0 / 0
Recordset
    #32167744
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а у Гетца почитать стр.242-246. что-то подобное
...
Рейтинг: 0 / 0
Recordset
    #32167749
Jem
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Смотрите стрелку на ветку, там продолжение:\r

...
Рейтинг: 0 / 0
Recordset
    #32167750
Jem
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
\\r
/topic/33042\\r
...
Рейтинг: 0 / 0
73 сообщений из 73, показаны все 3 страниц
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Recordset
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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