Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Базы данных и репортинг > значение из edit в запросе


Автор: kid_a 8.12.2007, 14:57
Необходимо использовать значение из edit в запросе.
Пример, ADOquery1.SQL.add('select  fio,  dni*"'+edit2.text+'"  as kol …
>> ошибка invalid Column name ‘100’
(Запрос вида 'select  fio,  dni*100  as kol … выполняется верно). 

Как исправить? Заранее спасибо. 


Автор: volvo877 8.12.2007, 15:42
Ну, если
Цитата(kid_a @  8.12.2007,  13:57 Найти цитируемый пост)
Запрос вида 'select  fio,  dni*100  as kol … выполняется верно
, то зачем ты добавляешь еще кавычки?

Код

ADOquery1.SQL.add('select  fio,  dni*'+edit2.text+'  as kol …');

Автор: AKBARS 15.4.2016, 22:43
Код

procedure TMain.Edit1Change(Sender: TObject);
begin
 with ibQuery1 do
  begin
    Close;
    SQL.Clear;
    SQL.Add('SELECT DISTINCT KADNOM FROM KADASTR WHERE KADNOM LIKE '+Edit1.Text+'%'' ');
    Open;
    First;
    ListBox1.Items.BeginUpdate;
    try
      ListBox1.Clear;
      while not Eof do
      begin
        ListBox1.Items.Add(FieldByName('KADNOM').AsString);
        Next;
      end;
    finally
      ListBox1.Items.EndUpdate;
    end;
  end;
end;


Данный код организовывает поиск в базе по эдиту, Но вся проблема в том что в событии onClick на том самом эдите я присваиваю ему ' ' чтобы пользователь вводил данные. И соотвественно при попытке изменить данные SQL ругает меня что он не умеет работать с пустыми параметрами. Основной вопрос как обойти этот момент.

Автор: salik 18.4.2016, 08:56
Думаю надо заменить '+Edit1.Text+'%'' ' на '''+Edit1.Text+'%'''

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)