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

Вниз

Поиск по 2 полям   Найти похожие ветки 

 
Lina   (2003-08-26 12:17) [0]

Пожалуйста, подскажите формат команды поиска в базе данных locate, если поиск производить по 2 столбцам.
Поля: gr, kod.
Нужно произвести в базе данных поиск записи, для которой значение поля gr = переменной gr1, а поля kod = kod1.
Я использовала table5.Locate("kodraion", xx, [loPartialKey]);
Но ни разу поиск не прошел успешно, хотя в таблице есть такие поля с такими значениями.


 
Reindeer Moss Eater ©   (2003-08-26 12:19) [1]

Я использовала table5.Locate("kodraion", xx, [loPartialKey]);
Но ни разу поиск не прошел успешно, хотя в таблице есть такие поля с такими значениями.


Есть поле "kodraion" и в нем есть значение xx??


 
asp ©   (2003-08-26 12:20) [2]

DataSet.Locate("FIELD1;FIELD2", VarArrayOf([Value1, Value2], [])


 
Zacho ©   (2003-08-26 12:21) [3]

Все есть в хелпе. Вот пример именно оттуда:

with CustTable do
Locate("Company;Contact;Phone", VarArrayOf(["Sight Diver", "P", "408-431-1000"]), [loPartialKey]);


 
Lina   (2003-08-26 12:25) [4]

Я написала поиск по одному полю, он работает.
А поиск по 2 полям:
table3.Locate("gr; kod", vararrayof( [gr1,kod1] ),[loPartialKey])
ни разу не нашел нужную запись, хотя есть такие поля и такие значения.
Но я смотрю, что видимо делала правильно.
Значит, ошибка в чем-то другом.


 
Lina   (2003-08-26 12:26) [5]

Может, не работает потому, что я в параметрах поиска даю строковые переменные? А надо конкретные значения?


 
Vlad ©   (2003-08-26 12:29) [6]

Может проблема в UpperCase/LowerCase ?
Попробуй написать
table3.Locate("gr; kod", vararrayof( [gr1,kod1] ),[loCaseInsensitive])


 
Reindeer Moss Eater ©   (2003-08-26 12:30) [7]

loPartialKey и так подразумевает loCaseInsensitive


 
Vlad ©   (2003-08-26 12:34) [8]

2 Reindeer Moss Eater © (26.08.03 12:30) [7]
Да ну ?


 
Lina   (2003-08-26 12:35) [9]

UpperCase/LowerCase не имеет смысла потому что значения переменных, по которым производится поиск:
gr="1","2","3" и т.д.
kod="801",802","803" и т.п.
То есть числовые.


 
Reindeer Moss Eater ©   (2003-08-26 12:46) [10]

Vlad ©

"Использование Delphi 3" Тодд Миллер, Дэвид Пауэлл и др.
стр 259

на заметку:
Если используется параметр loPartialKey, при поиске будет игнорироваться различие между прописными и строчными буквами, даже если не применяется член loCaseInsensitive.


 
Vlad ©   (2003-08-26 12:51) [11]

2 Reindeer Moss Eater © (26.08.03 12:46) [10]
Про Delphi 3 не могу сказать, но в D5,6 - это не так. (На заметку)


 
Reindeer Moss Eater ©   (2003-08-26 12:52) [12]

Про Delphi 3 не могу сказать, но в D5,6 - это не так. (На заметку)

Вообще-то версия Delphi здесь ни при чем.


 
Lina   (2003-08-26 12:55) [13]

В хелпе по Делфи:

loCaseInsensitive - Key fields and key values are matched without regard to case.
loPartialKey - Key values can include only part of the matching key field value; for example, "HAM" would match both "HAMM" and "HAMMER."
И хватит спорить о том, о чем я не спрашивала. :)


 
Sandman25   (2003-08-26 12:59) [14]

Только что проверил в исходниках Delphi3.

CaseInsensitive := loCaseInsensitive in Options;

loPartialKey не учитывается.


 
Reindeer Moss Eater ©   (2003-08-26 13:02) [15]

У блин, вот и верь после этого книгам.


 
Vlad ©   (2003-08-26 13:05) [16]

А вы уверены, что перед Locate, переменные gr1,kod1 равны именно тому значению которое нужно ?
Если да, тогда могу сие безобразие списать лишь на краемухауслышанное мнение о глючности BDE-шных TTable. Правда бездоказательно.


 
Lina   (2003-08-26 13:07) [17]

Ладно, проверю. Скорее всего опять проблема в лишних пробелах или т.п. в строковых переменных. Я не была уверена в правильности написания команды locate. Спасибо за столь бурное участие в моей судьбе. :)



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

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

Наверх




Память: 0.5 MB
Время: 0.034 c
4-48832
Still Swamp
2003-07-16 11:18
2003.09.15
Как установить мышиный курсор?


14-48718
Dred2k
2003-08-28 15:40
2003.09.15
2 Moderators Насчет форумов...


14-48741
Steven
2003-08-27 17:54
2003.09.15
ModelMaker


1-48490
Cherny Ivan
2003-09-04 16:51
2003.09.15
Filer.DefineBinaryProperty, и вытекающие последствия


14-48726
Pindos
2003-08-26 21:26
2003.09.15
Пираты