![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Поиск по Query [D6, XP]
Q8 © (2007-06-27 13:55:00)Здравствуйте мастера! Есть вопрос:
имеются DBGrid, DataSource, Query, button1 и два Edit'a. Подскажите пожалуйста, какими командами можно осуществить поиск в базе? Нужно, что бы введя в поле едит, и нажав на кнопку Button, осуществлялся поиск по определенному столбцую.Проблема в том, что это нужно сделать через SQL запрос, в чем я слабоват((.
homm (2007-06-27 16:06:00) [21]> Ну-ну, впиши туда д'Артаньяна, я хочу на это посмотреть.
Легко :)
Edit1.text := 'д’Артаньян';
SQL.Add('Where FIO='''+Edit1.text+'''');
А вобше конечно ты прав, нужно так:
SQL.Add('Where FIO='''+str_replace('''', '\''', Edit1.text)+'''');
Обидно, блин, к [10] о не придрался :)
Q8 (2007-06-27 16:04:00) [22]Опа! Еще вопрос! Имеется база с Фамилиями и инициалами(например Попов И.И., Попов А.Г.)Как сделать, что бы введя в Едит фамилию, без инициалов, программа находила всех однофамильцев?
Desdechado (2007-06-27 15:59:00) [23]> SQL.Add('Where FIO='''+Edit1.text+'''');
Ну-ну, впиши туда д'Артаньяна, я хочу на это посмотреть.
Q8 (2007-06-27 15:51:00) [24]Ребята! Вы действительно мастера! Все получилось! Всем помагавшим огромный РЕСПЕКТ! Просьба к админам не закрывать топик, может возникнут еще какие-нибудь проблемы по тем....
homm (2007-06-27 15:17:00) [25]> [9] Q8 (27.06.07 15:13)
Скажи мне, откуда СУБД должна быть осведомлена что такое Edit1.text, для нее это набор символов. Тебе нужно значение, которое в Edit1.text лежит передать.
Washington (2007-06-27 15:16:00) [26]SQL.Add('Where FIO='+Edit1.Text);
homm (2007-06-27 15:16:00) [27]> SQL.Add('Where FIO=Edit1.text');
SQL.Add('Where FIO='''+Edit1.text+'''');
Q8 (2007-06-27 15:13:00) [28]Ну вот, попробовал)), в общем нужно кое-что уточнить:
SQL.Add('Where Условие');можно тут подробней?
Я пишу так
With Query1 do begin
close;
Sql.Clear;
Sql.Add('Select *');
Sql.Add('From KSM_Base');
SQL.Add('Where FIO=Edit1.text');
open;
пишет Invalid Field name.text
Q8 (2007-06-27 14:41:00) [29]Спасибо за советы! Пойду пробовать!
ОН (2007-06-27 14:18:00) [30]Я наверное всех задолбал. Просто хочу быстрее закончить свою прогу и уйти на "пенсию", в отставку.
Ega23 (2007-06-27 14:12:00) [31]
> Не, знаю, как ему, а вот мне нравится, когда отвечают подробно.
> Я же дотошный типс...
Зачем до маразма-то доводить?
function ConvertBoolean(const Value : Boolean) : Boolean;
begin
if Value=True then
begin
Result := False
end
else
if Value=False then
begin
Result := True
end
else
raise Exception.Create('Unknown boolean value!');
end;
ОН (2007-06-27 14:02:00) [32]Не, знаю, как ему, а вот мне нравится, когда отвечают подробно. Я же дотошный типс...
Ega23 (2007-06-27 14:01:00) [33]
Sql.Clear;
Sql.Add('Select Столбец');
Sql.Add('From Таблица');
SQL.Add('Where Условие');
Всё это заменяется наSQL.Text := 'Select Столбец from Таблица where Условие';
homm (2007-06-27 13:59:00) [34]> With Query1 do begin
> close;
> Sql.Clear;
> Sql.Add('Select Столбец');
> Sql.Add('From Таблица');
> SQL.Add('Where Условие');
> open;
> end;
Ужас. А по букву слабо?
Ega23 (2007-06-27 13:57:00) [35]Select * from Table where Column=Edit1.Text
ОН (2007-06-27 13:57:00) [36]With Query1 do begin
close;
Sql.Clear;
Sql.Add('Select Столбец');
Sql.Add('From Таблица');
SQL.Add('Where Условие');
open;
end;
Примерно так.