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

Вниз

TTable   Найти похожие ветки 

 
DimChan ©   (2003-11-05 13:25) [0]

Добрый день Мастера, представьте себе таблицу в которой 100 полей и 1 строка, и необходимо добавить такую же строку, но с разницой значений в двадцати полях. Подскажите, пожалуйста, как это сделать или где прочесть, буду очень благодарен.


 
bushmen ©   (2003-11-05 13:29) [1]

Прочитай эту строку, измени значения, которые нужно и добавь


 
Sandman25 ©   (2003-11-05 13:29) [2]

var
OldRow: array of Variant;

В BeforeInsert:

SetLength(OldRow, DataSet.FieldCount);
for i := 0 to High(OldRow) do
OldRow[i] := DataSet.Fields[i].Value;

В AfterInsert:

for i := 0 to High(OldRow) do
DataSet.Fields[i].Value := OldRow[i];

После этого изменяйте нужные поля (руками или программно).


 
Плохиш_   (2003-11-05 13:30) [3]

точно также как и в таблицу в которой 2 поля и 50 строк


 
DimChan ©   (2003-11-05 14:18) [4]


> Sandman25 © (05.11.03 13:29) [2]

Если я тебя правильно понял то это должно работать, но...

procedure TForm1.Button1Click(Sender: TObject);
var n : integer;
s: array of string;
begin
//BeforeInsert
SetLength(s, TableNew.FieldCount);
for n := 0 to High(s) do
S[n] := TableNew.Fields[i].Value;

TableNew.Insert;
//AfterInsert
for n := 0 to High(s) do
TableNew.Fields[i].Value := s[n];
end;



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

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

Наверх




Память: 0.47 MB
Время: 0.043 c
6-79084
Tommy
2003-09-16 16:18
2003.11.24
Sinxronizacia setevogo vremeni


3-78781
MalkoLinge
2003-11-05 16:20
2003.11.24
Fastreport


1-78982
Condor
2003-11-14 14:36
2003.11.24
Нужны скины...


3-78834
i
2003-11-03 17:56
2003.11.24
CGI модуль для работы с БД MS Access


14-79115
Knight
2003-10-30 00:32
2003.11.24
Локальный сервер под Линух...