Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.08.13;
Скачать: CL | DM;

Вниз

Ошибка No current record при попытке редактирования данных   Найти похожие ветки 

 
Константин_   (2006-07-20 17:20) [0]

Ошибка "No current record" при попытке редактирования данных полученных путем Sql запроса. Как от нее избавиться?
Запрос:select dogovor,data,summa from data\grafic.dbf where dogovor="1" order by 2
Индекс по второму полю в БД есть.


 
Desdechado ©   (2006-07-20 17:29) [1]

Какая субд, какие компоненты?
Многопользовательский ли доступ?


 
Константин_   (2006-07-20 17:32) [2]

Таблица dbase IV работаю через BDE локально, компонент Query, многопользовательского доступа нет


 
Германн ©   (2006-07-20 17:39) [3]

TQuery.RequestLive
Только обязательно сначала прочти Хэлп по этому свойству


 
tesseract ©   (2006-07-20 17:40) [4]


> Константин_   (20.07.06 17:32) [2]


LiveRequest у query стоит в true?

проверь CanModify после запроса. Даже live request не гарантирует возможности редактирования.


 
Константин_   (2006-07-20 17:44) [5]

CanModify дает значение True


 
tesseract ©   (2006-07-20 17:48) [6]


> Константин_   (20.07.06 17:44) [5]


Тогда что-то не так с данными, возможно они вычисляемые или ссылочные.
Там много комментариев по tquery, лучше ознакомься.


 
Константин_   (2006-07-20 17:55) [7]

В таблице было два индекса, удолил дополнительный начала работать.
Спасибо за помощь.


 
ЮЮ ©   (2006-07-21 04:04) [8]


> В таблице было два индекса, удолил дополнительный начала
> работать.


Зато главного - первичного ключа - как не было, так и нет. Так что ждите проблемы 2007 года.


 
Константин_   (2006-07-22 00:08) [9]

А по подробнее можно?


 
ЮЮ ©   (2006-07-24 03:22) [10]

При наличии ключевого поля, при модификаии записи генерируется запрос вида
UPDATE ... WHERE <ключевое поле>  = <значение до изменения>
и сабжевая ошибка возможна лишь при удалении записи зругим пользователем (при отсутствии доступа к редактированию ключевого поля, естественно)

При его отсутствии (в таблице или запросе) - запрос на изменение имеет вид
UPDATE ... WHERE (<поле1>  = <значение поля1 до изменения>) AND  (<полеN>  = <значение поляN до изменения>)
и если значение хотя бы одного поля было NULL, то этот запрос не затронет ни одной записи, что считается ошибкой, что у вас и происходит



Страницы: 1 вся ветка

Текущий архив: 2006.08.13;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.05 c
15-1152966255
Юрий Зотов
2006-07-15 16:24
2006.08.13
2 stone: Олег, позвони мне, пожалуйста.


15-1153375915
QuickFinder
2006-07-20 10:11
2006.08.13
Топология


1-1151743737
mrAld
2006-07-01 12:48
2006.08.13
сборка через консоль


2-1153562509
S46E
2006-07-22 14:01
2006.08.13
WinExec и Ping


1-1151402606
DVM
2006-06-27 14:03
2006.08.13
Проблема с редактированием узлов TreeView