![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() У меня есть таблица. состоит из: имя, есть топлива, расход топлива, осталось топлива. Возможно сделать так, что бы значение из поля осталось топлива по нажатию на кнопку, переносилось в поле есть топлива. Я сделал еще одну таблицу: "код; осталось топлива." Т.е. значение из поля осталось первой таб. перноситься во вторую табл, а оттуда уже снова в первую, только в другое поле. Такое можно сделать. Вы не могли бы мне помочь?
... - остаток топлива на начало - изменение, расход топлива - остаток топлива на конец - ... или похожее на это, возможно как то по другому, .... |
#2
|
|||
|
|||
![]() для решения такой простой задачи хватит средств sql, а возможно даже самой субд, что Вы используете.
|
#3
|
||||
|
||||
![]() Цитата:
Код:
procedure TForm1.Button1Click(Sender: TObject); begin Table2.Append; Table2.FieldByName('осталось топлива').AsFloat := Table1.FieldByName('осталось топлива').AsFloat; Table2.Post; Table1.Edit; Table1.FieldByName('есть топлива').AsFloat := Table2.FieldByName('осталось топлива').AsFloat; Table1.Post; end; |
#4
|
|||
|
|||
![]() Цитата:
delphi и access / На примере покажите пожалуйста. Последний раз редактировалось rs219, 24.08.2012 в 14:03. |
#5
|
|||
|
|||
![]() Примерно таким запросом:
Код:
UPDATE Table1 SET a1 = (SELECT a2 FROM Table1) На всякий случай, при уникальности имени, можно во второй селект добавить предложение запроса WHERE Table1.Name = Table1.Name, т.е. примерно так: Код:
UPDATE Table1 SET a1 = (SELECT a2 FROM Table1 WHERE Table1.Name = Table1.Name) но думаю, что это будет излишним. p.s. Так же, возможно, что в конце надо будет написать GO но это уже зависит от того, где будете выполнять запрос. Последний раз редактировалось nixel, 24.08.2012 в 14:51. |
#6
|
||||
|
||||
![]() Неправильная изначально постановка задачи. Если какое-либо значение в БД возможно вычислить используя данные таблиц, то результат этих вычислений никогда не надо заносить в отдельную таблицу. Если нарушить это правило, то рано или поздно вы наступите на грабли рассинхронизации данных. Скорее всего у вас просто несколько неверная структура БД, вот потому и проблемы с запросом.
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#7
|
|||
|
|||
![]() Цитата:
datamodule2.ADOTable1.FieldByName('ostatok').AsFlo at:= datamodule2.ADOTable3.FieldByName('остаток').AsFlo at; - это строка долна пприравнять значение поля "остаток" полю "ostatok", но оно выдает ошибку, что ADOTable1. не может редактировать или всталять строки, *??? |
#8
|
||||
|
||||
![]() Цитата:
Код:
Table1.Edit; |
Этот пользователь сказал Спасибо poli-smen за это полезное сообщение: | ||
rs219 (24.08.2012)
|
#9
|
|||
|
|||
![]() Цитата:
|