Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.04;
Скачать: CL | DM;

Вниз

Применение функции locate для поиска записей по полю memo   Найти похожие ветки 

 
Ann Boo   (2004-03-05 10:54) [0]

Уважаемые мастера, подскажите, пожалуйста, почему не работает функция Locate для полей Memo (поиск с частичным совпадением). Выдается ошибка о невозможности выполнения запроса. Использую БД Access, подключаюсь с помощью ADO.

ffield:="SecondNames";   //имя memo-поля
fvalue:=Form1.Edit1.Text;
opts:=[loCaseInsensitive,loPartialKey];
if not Form1.ADOTable1.Locate(ffield, fvalue, opts) then
 ShowMessage("запись не найдена");


 
Соловьев ©   (2004-03-05 11:00) [1]

а если написать нормально?
if not Form1.ADOTable1.Locate("SecondNames", Form1.Edit1.Text, [loCaseInsensitive,loPartialKey]) then
ShowMessage("запись не найдена")


 
Кщд   (2004-03-05 11:00) [2]

"почему не работает функция Locate для полей Memo "
по определению :)


 
Anatoly Podgoretsky ©   (2004-03-05 11:04) [3]

Locate только для поиска по полям с фиксировной длиной и простого типа.


 
sniknik ©   (2004-03-05 11:11) [4]

для Access легко можно сделать дополнительный запрос
"SELECT ID FROM Table WHERE SecondNames LIKE ""%"+Form1.Edit1.Text+"%""";
что даст ID (в данном случае идентификатор, ключь) всех совпадений, по нему локейт будет работать, и не нужно тянуть на локаль все мемо поля для обработки, а только совпадающие.

p.s. в очередной 101 раз ;о), не используйте ADOTable, для ADO в нем больше недостатков чем выигрыша от "привычности" использования.



Страницы: 1 вся ветка

Текущий архив: 2004.04.04;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.025 c
1-1079015167
MetalFan
2004-03-11 17:26
2004.04.04
TRichedit, WM_SETZOOM и EM_FORMATRANGE


1-1079620489
Erik
2004-03-18 17:34
2004.04.04
Как определить масив констант?


11-1059319517
BelchonokH
2003-07-27 19:25
2004.04.04
pstream.free


1-1079421490
Ш-К
2004-03-16 10:18
2004.04.04
XML. Format and Indent


7-1073810584
TankMan
2004-01-11 11:43
2004.04.04
На счет бут сектора...