![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Всем привет! есть две таблицы Tb1 и Tb2, нужно перекинуть выбранную строчку из ревой DBGrid на вторую (из первой таблица на вторую) использую ADOquery бд Access. спасибо!
|
#2
|
|||
|
|||
![]() SQL:
Код:
insert into Tb2 select * from Tb1 where id = :id; Структура таблиц должна быть одинаковая. Delphi: Код:
Tb2.Edit; For I := 0 To Tb1.Fields.Count-1 Do Tb2.Fields[i].Value := Tb1.Fields[i].Value; Tb2.Post; Если структура разная, то нужен список перекидываемых полей. Соответсвенно, в случае SQL надо будет генерировать запрос в рантайм (если для разных таблиц нужна операция). В случае Delphi, просто идем по списку имен полей и обращаемся через FieldByName(names[i]) вместо Fields[i]. |
#3
|
|||
|
|||
![]() lmikle не могли бы вы полностью прописать код?
|
#4
|
||||
|
||||
![]() Из действующего проекта. Вставка выбранных записей из одной таблицы в другую:
Код:
procedure TwPricemaking.kToPriceClick(Sender: TObject); var cRow:integer; begin if (gDetailing.SelectedRows.Count<0) then exit; if GiPriceListId=null then exit; {Перезапись выбранных столбцов в Price} with gDetailing.DataSource.DataSet do for cRow:=0 to gDetailing.SelectedRows.Count-1 do begin GotoBookmark(pointer(gDetailing.SelectedRows.Items[cRow])); iDetailID:=FieldByName('DETAIL_ID').AsInteger; iLabourPrice:=FieldByName('LABOUR_COST').AsInteger; sLongName:=FieldByName('DETAIL_LONGNAME').AsString; iSeqence:=wPricing.hSpBase.Gen_Id('PRICE_SEQ',1); wPricing.hrPrices.Append; wPricing.hrPrices.FieldByName('PRICE_ID').AsInteger:=iSeqence; wPricing.hrPrices.FieldByName('PRICELIST_ID').AsInteger:=GiPriceListId; wPricing.hrPrices.FieldByName('DETAIL_ID').AsInteger:=iDetailID; wPricing.hrPrices.FieldByName('LABOUR_PRICE').AsInteger:=iLabourPrice; wPricing.hrPrices.FieldByName('DETAIL_LONGNAME').AsString:=sLongName; end; end; - Товарищ прапорщик!!! Остановите поезд!!! - Поезд СТОЙ! РАЗ! ДВА! Последний раз редактировалось Viajero, 16.05.2012 в 15:34. |