Страница 1 из 2

Поиск в БД

СообщениеДобавлено: 18.04.2011 13:33:56
Baistep
Код: Выделить всё
st:= inputBox ('Поиск', 'Введите имя или фамилию','');
  if st<> '' then
  begin
  Adoquery1.Filtered:=false;
  Adoquery1.Filter:='name Like ''%'+st+'%''';
  Adoquery1.Filtered:=true;
  if Adoquery1.RecordCount=0 then
  begin
  Adoquery1.Filtered:=false;
  ShowMessage ('В БД нет записей удовлетворяющих запросу')
  end;
  end;


Это поиск по имени и фамилии помогите переделать под поиск по году. Плз

Re: Поиск в БД

СообщениеДобавлено: 18.04.2011 14:01:18
vada
А что дашь?

Re: Поиск в БД

СообщениеДобавлено: 18.04.2011 14:03:50
Padre_Mortius
Учимся пользоваться тегом code

Re: Поиск в БД

СообщениеДобавлено: 18.04.2011 14:06:10
Baistep
спасибо скажу)

Re: Поиск в БД

СообщениеДобавлено: 18.04.2011 14:15:01
vada
Спасибо не катит. Ты же как не знал, так и дальше знать не будешь.
Почитай книжки, и увидишь как это просто по году искать.

Re: Поиск в БД

СообщениеДобавлено: 18.04.2011 14:18:20
Baistep
я читал и в нете искал там везде по дате 12.12.2011 а мне надо по году 2011 прост

Re: Поиск в БД

СообщениеДобавлено: 18.04.2011 15:39:08
Brainenjii
Блин, чувак! Мне как раз нужен поиск по дате 12.12.2011!!! Весь инет перерыл - нигде не нашёл! Поделись ссылкой, а?!

Re: Поиск в БД

СообщениеДобавлено: 18.04.2011 22:45:00
ViTality
Baistep писал(а):я читал и в нете искал там везде по дате 12.12.2011 а мне надо по году 2011 прост

ну дык и ищи даты в необходимом тебе диапазоне ;)

Re: Поиск в БД

СообщениеДобавлено: 19.04.2011 11:12:29
wofs
Baistep писал(а):... а мне надо по году 2011 прост


например сформировать запрос так (подставив свои Table1, поля для выборки и поле вместо "Дата"):
Код: Выделить всё
FindQuery.SQL.Add('SELECT * FROM Table1 WHERE Дата BETWEEN '+QuotedStr('01.01.'+YearText.Text) AND QuotedStr('31.12.'+YearText.Text)+';');

Re: Поиск в БД

СообщениеДобавлено: 20.04.2011 12:26:44
Baistep
Я переделал но чтот не пашет (( чё не так ?
ADOQuery.SQL.Add('SELECT * FROM contacts WHERE data BETWEEN '+QuotedStr('01.01.'+Edit1.Text) AND QuotedStr('31.12.'+Edit1.text.Text)+';');

Re: Поиск в БД

СообщениеДобавлено: 20.04.2011 13:10:23
Jargar
Baistep писал(а):Я переделал но чтот не пашет (( чё не так ?
ADOQuery.SQL.Add('SELECT * FROM contacts WHERE data BETWEEN '+QuotedStr('01.01.'+Edit1.Text) AND QuotedStr('31.12.'+Edit1.text.Text)+';');


Edit1.text.Text <-------- наверное по этому

Re: Поиск в БД

СообщениеДобавлено: 20.04.2011 14:42:18
Baistep
нет это я видел уже

Re: Поиск в БД

СообщениеДобавлено: 20.04.2011 15:24:29
v-t-l
Видно, раз Add первым в списке autocompletion у SQL, то его и надо использовать? :(

Код: Выделить всё
ADOQuery.SQL.Text:='SELECT * FROM contacts WHERE data BETWEEN '+QuotedStr('01.01.'+Edit1.Text)+' AND '+QuotedStr('31.12.'+Edit1.Text);

или хотя бы
Код: Выделить всё
ADOQuery.SQL.Clear;
ADOQuery.SQL.Add('SELECT * FROM contacts WHERE data BETWEEN '+QuotedStr('01.01.'+Edit1.Text)+' AND '+QuotedStr('31.12.'+Edit1.Text));

Re: Поиск в БД

СообщениеДобавлено: 20.04.2011 16:39:25
Baistep
всё без проблем компилируется а ничего не ижет прост пустую таблицу кажеть(((

Re: Поиск в БД

СообщениеДобавлено: 20.04.2011 17:05:30
v-t-l
Код: Выделить всё
ADOQuery.Open;