Форум: "Базы";
Текущий архив: 2003.04.28;
Скачать: [xml.tar.bz2];
ВнизЧто за Ошибка Найти похожие ветки
← →
Sherbacov (2003-04-09 17:54) [0]-!Внимание Ошибка!- 09.04.03 17:47:13 Row cannot be located for updating. Some values may have been changed since it was last read
Код:
while not db1.temp.Eof(ADO TABLE) do
begin
DB1.sheta.First;
while not DB1.sheta.Eof(ADO TABLE) do
begin
if DB1.tempchet.Value = db1.shetaChet.Value then
begin
DB1.temp.Edit;
DB1.tempEnable.Value := 1;
DB1.temp.Post;-Ошибка происходит тут действий Onpost нет и других.
end;
DB1.sheta.Next;
end;
DB1.temp.Next;
end;
Структура DB1.temp
Id - счетчик (ключ)
Klientno -числовой
Fio -текстовой (255)
Chet - текстовой (20)
Summ - денежный
Enable - числовой
Структура DB1.sheta.Next
Аналогично
← →
Zz_ (2003-04-09 18:01) [1]Properties["Update Criteria"] чему равны
← →
Johnmen (2003-04-09 18:01) [2]Степень релевантности - 3-4 раза в неделю...:)
← →
Sherbacov (2003-04-09 18:12) [3]db1.temp.CanModify = true
← →
sniknik (2003-04-09 18:36) [4]и это все вместо простого запроса!!??
UPDATE temp, sheta SET temp.Enable=1 WHERE temp.Chet=sheta.Chet
и чего люди SQL не любят?
← →
Sherbacov (2003-04-09 18:45) [5]В моей ситуации ADOTABLE будет быстрее
← →
sniknik (2003-04-09 22:29) [6]да брось ты. быстрее, - видно насколько, цикл в цикле специально чтобы не мелькало? чтобы хоть чуть задержку сделать? так ты там sleep поставь для солидности. ;о)) придать весу "вычислениям".
(поставь у ADOCommand-а с этим запросом асинхронное выполнение и запрос для программы продлится долю секунды на любых размерах таблиц)
← →
Sherbacov (2003-04-10 15:56) [7]sniknik с запросоми быстрее навигация по НД, но локально Table быстрее, тут даже спорить не надо. Каждый компонент для своего назанчения, а пихать запросы везде и говорить что ты крутой программер и хорошо знаешь SQL, я думаю это не логично.
← →
Johnmen (2003-04-10 16:28) [8]>Sherbacov © (10.04.03 15:56)
Не надо оскорблений. Тем более, что sniknik © сказал тебе дело, притом без наездов. А ты в ответ - слегка пурги...:)
← →
sniknik (2003-04-10 17:03) [9]Sherbacov © (10.04.03 15:56)
во первых я нигде не утверждал, что я "крутой" программер (я профи раз за это деньги платят, разница!)
во вторых нет нигде правила что нельзя еше один компонент использовать (ADOCommand) если уже положил туда другой (ADOTable).
в третьих "локально" для ADO это заблуждение (в большинстве случаев) т.к. движок того же jet-а к примеру работает как своеобразный клиент-сервер, а таблица то же самое что SELECT * FROM TableName. (но вообще конечно от провайдера зависит, VFP драйвер к примеру открывает и "держит" таблицу (удалить после селекта не удастся))
в четвертых, да раз хочется используй! запретов тоже нет
bol: boolean;
while not db1.temp.Eof(ADO TABLE) do begin
DB1.sheta.First;
bol:= true;
while (not DB1.sheta.Eof(ADO TABLE)) and (bol) do begin
if DB1.tempchet.Value = db1.shetaChet.Value then begin
DB1.temp.Edit;
DB1.tempEnable.Value := 1;
DB1.temp.Post;
bol:= false;
end;
DB1.sheta.Next;
end;
DB1.temp.Next;
end;
заодно и побыстрее будет. (или у тебя и так скорость на максимуме? про sleep подумай)
← →
Sherbacov (2003-04-10 23:24) [10]>sniknik Я и не думал оскорблять, просто уже надоели с SQL. Везде к где можно и нельзя добавляют. Я за золотую серединку.
Про sleep я подумаю.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.04.28;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.008 c