У меня есть форма, которая должна отображать и отображать данные из базы данных MYSQL.
SQL-код, который я написал, отлично работает, поскольку я попытался выполнить его в MYSQL.Получение данных из таблицы SQL в Delphi
Я также использовал аналогичный формат кода для одного в моей форме, в другой форме, для извлечения и отображения данных SQL. Код отлично работает в другой форме.
Однако мой код для этой формы, похоже, не принимает/не отображает данные из таблицы SQL.
Это фрагмент кода, который будет написан для события OnShow
формы.
procedure TfrmEditBooking.FormShow(Sender: TObject);
var
CustName: string;
begin
if SelectedID > 0 then
begin
with frmBookingData.ADOQuery1 do
begin
Open;
SQL.Clear;
SQL.Add('SELECT Name, Surname ' +
'FROM customers_main ' +
'WHERE customers_main.idcustomers_main ' +
'IN ' +
'(SELECT bookings_main.customers_main_idcustomers_main ' +
'FROM bookings_main ' +
'WHERE bookings_main.idbookings_main = ' + IntToStr(SelectedID) + ')');
ExecSQL;
CustName := FieldByName('Surname').AsString + ' ' + FieldByName('Name').AsString;
Label1.Caption := CustName;
Close;
end;
end;
end;
Вы открываете запрос, затем меняете открытое заявление запроса, затем выполняете его и, наконец, закрываете. Вы должны прочитать, как правильно использовать TADOQuery/TDataSet –
Этот http://stackoverflow.com/questions/15552718/using-multiple-sql-queries/15554868#15554868 очень похож на ваш –
Где вы устанавливаете строку подключения? – Sparky