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

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

Доброго времени суток, нуждаюсь в совете, плз [D5, MSSQL, ]


DeadMoroz ©   (2001-12-03 15:21:00) 

Для поиска в таблице использую стандартную процу:

procedure TForm1.Edit1Change(Sender: TObject);
begin
if Edit1.Text<>"" then
begin
Table1.Locate("NUM",Edit1.Text,loCaseInsensitive,loPartialKey]);
end;
end;

но, в данном случае поле "NUM" типа Int...Короче, курсор переползает на запись только при полном совпадении Text со значением поля, то есть как бы никакого loPartialKey и нету, а очень хотелось бы. Перепробовал все остальные методы (и Pos тоже)... в итоге пришел сюда.

Присоветуйте, кто чем может, заранее Спасибо :-).


DeadMoroz   (2001-12-04 09:16:00) [1]

Попробовал.....работает, но жуткий тормозняк...

Есть еще советы?


DeadMoroz   (2001-12-03 16:09:00) [2]

Дело в том, что мой Table1 является Мастером и все равно курсор нужно перемещать в его DataSet"e....хотя попробую TmpQuery завязать на тотже DataSet1...


Deniz   (2001-12-03 15:50:00) [3]


procedure TForm1.Edit1Change(Sender: TObject);
var i : integer;
begin
if Edit1.Text<>"" then begin
TmpQuery.SQL.Clear;
TmpQuery.SQL.Add("select num from table1
where cast(num as varchar(20)) like :aNum");
TmpQuery.Prepare;
TmpQuery.Params[0].asString:=Edit1.Text;
TmpQuery.Open;
if TmpQuery.IsEmpty then begin
TmpQuery.Close;
ShowMessage("Not found.");
Exit;
end
else begin
i:=TmpQuery.Fields[0].asInteger;
TmpQuery.Close;
Table1.Locate("NUM", i, []);
end;
end;
end;

TmpQuery - временная Query
Удачи.


Наверх

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