Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.05.2012, 11:51   #1
Anton911
Форумчанин
 
Аватар для Anton911
 
Регистрация: 23.08.2011
Сообщений: 171
По умолчанию Добавление записи в таблицу через таблицу

Всем привет, в моей базе данных есть две таблицы, "Партии" и "Ходы_партии", между ними связь 1 ко многим соответственно по "Номер_партии".
В общем вопрос, как добавить записи в таблицу "Ходы_Партии" через таблицу "Партии"?

Вот код:
Код:
procedure bd_FinishCloseArena(Player_1,Player_2,TimeStart,TimeFinish:string;TableId,Time,ArenaResult:integer);
var I:integer;
Arena:pArena;
begin
Arena:=Arena_GetArenaFromTable(TableId);
with Form_Server.ADOQuery do
    Begin
    Close;
    SQL.Text := 'INSERT INTO Партии (Белыми_играет,Черными_играет,Начало_игры,Окончание_игры,Время_хода,Код_результата) VALUES (:player1,:player2,:Start,:Finish,:Time,:Result)';
      Parameters.ParamByName('player1').Value := Player_1;
      Parameters.ParamByName('player2').Value := Player_1;
      Parameters.ParamByName('Start').Value :=TimeStart;
      Parameters.ParamByName('Finish').Value :=TimeFinish;
      Parameters.ParamByName('Time').Value :=Time;
      Parameters.ParamByName('Result').Value :=ArenaResult;
      for I := 1 to Arena.StepCount do
        Begin
        SQL.Add('INSERT INTO Партии.Ходы_партии (Номер_хода,Белые-Черные,Фигура,Поле-Откуда,Поле-Куда) VALUES (:StepId,:BlackWite,:FigureId,:From,:iIn)');
        Parameters.ParamByName('StepId').Value := I;
        Parameters.ParamByName('BlackWite').Value :=Arena.Steps[I].WhiteBlack;
        Parameters.ParamByName('FigureId').Value :=Arena.Steps[I].FigureId;
        Parameters.ParamByName('From').Value :=Arena.Steps[I].CheckFrom;
        Parameters.ParamByName('iIn').Value :=Arena.Steps[I].CheckIn;
        End;
    ExecSQL;
    End;
end;
Каждый день узнаю новое...
Anton911 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Добавление записи в таблицу chinock Microsoft Office Access 2 24.09.2010 14:39
Добавление записи в таблицу Galiska БД в Delphi 3 25.05.2010 08:07
Добавление записи в таблицу folga БД в Delphi 4 21.04.2010 08:15
Добавление записи в таблицу (ADO) Yura_S БД в Delphi 12 25.11.2009 19:11
Добавление записи через список в связанную таблицу(при связи с Access) megaten БД в Delphi 5 17.05.2009 15:57