|
#1
|
|||
|
|||
Запрос к ADOQuery
есть на форме
1 ComboBox 2 Edit 3 ClientDataSet (посылает запрос к ADOQuery) в общем посылаю запрос через ClientDataSet.CommandText:='балабала'; вот только не пойму строка Form1.ClientDataSet1.CommandText:='SELECT * FROM Basis WHERE Производитель LIKE '''+Form1.ComboBox1.Text+''''; отрабатывает нормально, отбирая выбранного в ComboBox производителя но стоит добавить к этому +' ANY Модель '''Form1.Edit1.Text+''''; может че не так делаю? общая форма запроса: SELECT * FROM Basis WHERE Производитель (имя поля) LIKE Имя_Производителя (значение ComboBox) ANY Модель Имя_Модели (Модель-имя поля, Имя_Модели-значение Edit) не могу разобраться с элементарным перечитал про эти ANY ALL SOME и все равно торможу |
#2
|
|||
|
|||
в общем вот одно из решений
Form1.ClientDataSet1.CommandText:='SELECT * FROM Basis WHERE Производитель LIKE '''+Form1.ComboBox1.Text+''''+' AND Модель = '''+Form1.Edit1.Text+''''; но в этом случае отбирает только целое слово с символом % ... Form1.ClientDataSet1.CommandText:='SELECT * FROM Basis WHERE Производитель LIKE '''+Form1.ComboBox1.Text+''''+' AND Модель = '''+Form1.Edit1.Text+'%'''; не хочет находить вообще ни чего |
#3
|
|||
|
|||
Решение нашел
Form1.ClientDataSet1.CommandText:='SELECT * FROM Basis WHERE Производитель LIKE '''+Form1.ComboBox1.Text+''' AND Модель LIKE '''+Form1.Edit2.Text+'%'''; благодарю всех за содержательные ответы |