| 
| 
 | Вопрос # 3 546/ вопрос открыт / | 
 |  Доброго времени суток, уважаемые эксперты!Скажите, пожалуйста,как осуществить поиск. У меня есть DBGrid c таблицей из БД на одной форме. В этой таблице мне нужно осуществить поиск по одному полю. На другой форме есть Edit, в который вводится искомое слово. Выдается ошибка о том, что аргументы имеют неверный тип, выходят за пределы допустимого диапазона или вступают в конфликт друг с другом.
 
 Работаю в Delphi7 и Access2007
 Приложение:Переключить в обычный режим procedure TForm12.N4Click(Sender: TObject);begin  if Form14.ShowModal=mrOK then    begin      with DataModule11.ADOTable1 do        begin           Filtered:=True;        end;    end;end;  
|  |   Вопрос задал: sensey (статус: Посетитель)Вопрос отправлен: 18 декабря 2009, 12:52
 Состояние вопроса: открыт, ответов: 1.
 |  Ответ #1. Отвечает эксперт: Вадим К Здравствуйте, sensey!Если поле с названием "Название песни" есть в базе, то тогда причина проста и банальна. SQL не сильно любит, когда поля имеют пробелы в названии и состоят с русских букв. Но для АДО есть решение. достаточно взять поле в квадратные скобки. То есть код должен выглядеть где то так
 Filter:='[Название песни] = '+Form14.Edit1.Text;
 а может даже так
 Filter:='[Название песни] = "'+Form14.Edit1.Text+'"';
 
|  | Ответ отправил: Вадим К (статус: Академик)Время отправки: 18 декабря 2009, 13:02
 Оценка за ответ: 5
 |  
 Мини-форум вопросаВсего сообщений: 1; последнее сообщение — 22 декабря 2009, 16:25; участников в обсуждении: 1. 
|   | fff (статус: Посетитель), 22 декабря 2009, 16:25 [#1]:Да с помощью фильтра только не забудь свойство filtered поставить в True. ВОт у меня проблема посложнее как фильтровать вычисляемое поле и к тому же в запросе.... |  Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |