Вниз
Скачать: CL | DM;

Как скопировать строку в ADOQuery?   Найти похожие ветки 

 
Uran   (2005-07-13 11:36) [0]

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


 
ANB ©   (2005-07-13 11:37) [1]

Клчевое поле тоже будешь дублировать ?


 
Uran   (2005-07-13 11:55) [2]

Нет ... продублировать нужно все кроме ключевого поля.
Оно счетчиком генерируется.


 
ЮЮ ©   (2005-07-13 12:08) [3]

>которую передается DataSet, и значение ключиевого, поля.

А где уверенность, что в этом датасете есть запись с этим ключом?
И куда вставлять? В DataSet или таблицу?


 
sniknik ©   (2005-07-13 12:11) [4]

> Подскажите пожалуйста как это лучше реализовать.
это лучше не реализовывать. т.к. есть подозрение (> "Оно счетчиком генерируется."), что нужно оно тебе для передачи в запрос на вставку в другую таблицу... копирование такое своеобразное.
так вот если так, или хотябы подобное, то это принципиально неверный подход.


 
Slym ©   (2005-07-13 12:53) [5]

procedure Copy(DataSet:TDataSet;const KeyField:string;KeyValue:Variant);
var i:integer;
Data:array of variant;
begin
if not DataSet.Locate(KeyField,KeyValue,[]) then exit;
SetLength(Data,DataSet.FieldCount);
for i:=0 to DataSet.FieldCount-1 do
Data[i]:=DataSet.Fields[i].Value;

DataSet.Append;
for i:=0 to DataSet.FieldCount-1 do
begin
if DataSet.Fields[i].FieldName=KeyField then continue;
DataSet.Fields[i].Value:=Data[i];
end;
DataSet.Post;
end;


 
Uran   (2005-07-13 14:28) [6]

Slym спасибо большое! :) то что надо!:)



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.027 c
1-1122385279
vigo
2005-07-26 17:41
2005.08.21
Перекодировка из DOS в WIN...


1-1122630609
Aleksandr.
2005-07-29 13:50
2005.08.21
Как правильно удалить TMenuItem?


4-1118653414
Plan
2005-06-13 13:03
2005.08.21
Как заблокировать а потом разблокировать компьтер?


6-1115785055
Lex_!
2005-05-11 08:17
2005.08.21
по поводу получения Http контента


1-1122890294
Dust
2005-08-01 13:58
2005.08.21
народ, оцените код




   Наверх