Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Поиск


Страницы:   1 2

Nameziz ©   (2008-09-08 12:14:00) 

Помогите с реализацией поиска. Задача: написать функцию которая бы по имени поля и его значению искала записи (использовать компонент Query + использовать параметры) и в качестве результата возвращала количество найденных записей. Вот что у меня получилось:

function Tdatamodule_Connection.FindByField(const FieldName,
 FieldValue: string): Integer;
begin
 Result := -1;
 if ConnectionStatus = csConnected then
 begin
   cmp_Query_.Close;
   cmp_Query_.SQL.Text := 'SELECT * FROM ITEM WHERE ' + FieldName + ' = :FieldValue';
   if not cmp_Query_.Prepared then
     cmp_Query_.Prepare;
  // здесь не получается сделать разделение для тестовых и числовых полей.
     cmp_Query_.ParamByName('FieldValue').AsInteger := StrToInt(FieldValue);
 {  else
     cmp_Query_.ParamByName('FieldValue').AsString := FieldValue; }
   cmp_Query_.ExecSQL;
   Result := cmp_Query_.RowsAffected;
 end;
 FSelByKey := False;
end;


Palladin   (2008-09-08 12:16:00) [21]

не будь таким сложным
cmp_Query_.ParamByName('FieldValue').Value:=FieldValue;


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо