Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.12.02;
Скачать: [xml.tar.bz2];

Вниз

AND и OR при параметрич.запросе   Найти похожие ветки 

 
PKT   (2002-11-15 05:53) [0]

SELECT * FROM Data.db WHERE
(Num = :Num1) AND (Num = :Num2)

Далее
Params[0].AsInteger := 1;
Params[1].AsInteger := 1;
Проходит нормально, причем неважно, какие значения
присваиваются.

Но если поставить "ИЛИ"
SELECT * FROM Data.db WHERE
(Num = :Num1) OR (Num = :Num2)

то вываливается
Access violation at address 4C5F30C9 in module "idsql32.dll".

Неужто нельзя использовать OR при обращении через параметры
к одному и тому же полю дважды ?


 
sniknik   (2002-11-15 09:53) [1]

странно должно работать (неохота проверять)
попробуй так
SELECT * FROM Data.db WHERE Num IN (:Num1, :Num2)


 
Котелок   (2002-11-15 09:55) [2]

Поробуй через parambyname заполнять.


 
sniknik   (2002-11-15 10:23) [3]

да уж забавное свойство BDE параметров (проверил всетаки), вставка значения в текст такого запроса работает, а с параметрами Access violation.


 
oss   (2002-11-15 10:25) [4]

1. попробую
SELECT * FROM Data.db WHERE
((Num = :Num1) OR (Num = :Num2))
2. сделай переменную "SELECT * FROM Data.db %s"
потом по надобности испольуй Format и заноси все что душе угодно.




 
PKT   (2002-11-15 10:30) [5]

to: sniknik © (15.11.02 09:53)
Предиката IN не прокатывает в параметр.запросах, это я на
форуме уяснил.

to:Котелок © (15.11.02 09:55)
Имелось в виду ParamValues ? Все равно ошибка вываливается.

Что интересно, если добавить
SELECT * FROM Data.db WHERE
(Num = :Num1) OR (Num = :Num2)
AND (Num < ЗаведомоБольшоеЧисло)
то все работает


 
sniknik   (2002-11-15 10:43) [6]

так тоже работает
WHERE NOT ((Num<>:Num1) AND (Num<>:Num2))
проще конечно в запрос значение вставить без параметра текстом.
(замазывание проблемы)


 
PKT   (2002-11-15 10:50) [7]

to: sniknik © (15.11.02 10:43)
Спасибо, пожалуй так и сделаю.



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

Форум: "Базы";
Текущий архив: 2002.12.02;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.008 c
14-4594
Anatoly Podgoretsky
2002-11-12 07:45
2002.12.02
Именинники 12 ноября


3-4174
Тундра
2002-11-12 12:09
2002.12.02
Упаковка таблицы FoxPro


4-4691
cyborg
2002-10-20 00:29
2002.12.02
Отслеживать события


4-4675
RETAND
2002-10-21 20:10
2002.12.02
Сделать мою форму как рабочий стол Windows


1-4413
Jack Frost
2002-11-15 14:47
2002.12.02
Enter как Tab





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский