SQLdb: SQLConnection + SQLQuery + SQLTransaction
100 тыс. записей. Поля: id, Поле1, Поле2.
Надо для каждой записи из поля "Поле2" вычислить и записать в "Поле1"
Я пробовал делать так:
Считал таблицу, и в цикле для каждой записи делаю так:
- Код: Выделить всё
UPDATE Table1
SET Поле1="значение"
WHERE id="id"
но так ооочень долго
Может можно как-то так:
- Код: Выделить всё
Query.SQL.Add('SELECT * FROM Table1');
Query.Open;
while not Query.Eof do begin
Query.Edit;
Query.FieldByName('Поле1').AsString:='....';
Query.Post;
Query.Next;
end;
Query.ApplyUpdates;
На это у меня выдает ошибку:
- Код: Выделить всё
raised exception class 'EDatabaseError' with message:
Parameter type ftMemo not supported.
P.S. До этого у меня эта программка была в Delphi, а там есть TTable, с ним я доволно быстро пробегал по всем записям.