Форум: "Базы";
Текущий архив: 2003.05.01;
Скачать: [xml.tar.bz2];
ВнизЕще вопрос по хранимой процедуре в InterBase! Найти похожие ветки
← →
Z_man7777 (2003-04-12 11:42) [0]Здравствуйте, Уважаемые Мастера!!! Пишу сейчас процедуру в InterBase(FireBird) и мне понадобилась Ваша помощь.
Процедура, которая будет искать данные в определенной таблице по всем полям. В качестве входных параметров передаю значения соответсвенно полям в этой таблице. Перед <select> формирую <where>. Проверяю, какие параметры не пустые и назначаю в ранее объявленную переменную типа <blob sub_type 1>. Ниже приведен кусок кода. Обратите Ваше внимание на выделенный текст. Подскажите что не верного. А если у кого есть уже готовый пример поиска данных в виде процедуры, то поделитесь, пожалуйста. Всем заранее спасибо!!!
...
If (:PID is not null) then SQLText="a.Id like ""%""||:PID||""%"""; If (:PStatus is not null) then SQLText= SQLText+" or a.Status ike ""%""||:PStatus||""%""";
If (:SQLText <> "") then For Select Id,Status from clients where (:SQLText)
где: PID, PStatus - входные параметры
SQLText blob sub_type 1 - объявлена в Declare Variable
← →
Alexandr (2003-04-12 12:08) [1]1) where (:SQLText) вот это неверно. Так нельзя.
2) Ты б документацию почитал, а то тебя заносит шибко...
← →
Z_man7777 (2003-04-14 06:23) [2]!Alexandr!
Если есть пример, поделитесь пожалуйста!!! Чтобы я не задавал глупых вопросов, а то искал что-то подобное в мануале, но поиски мои не дали никаких плодов.
Спасибо!
← →
Z_man7777 (2003-04-14 07:00) [3]Мастера-программеры помогите, плызззззз!!!
Помоги мне в решении моей проблемы. Все описано выше. Чем можете помогите, я буду очень Вам благодарен. В мануале искал не нашел, а где-то искать еще, у меня просто время поджимает!
Заранее Всем Спасибо!!!
← →
Sergey Masloff (2003-04-14 07:49) [4]Z_man7777 ©
Нельзя формировать условие а потом исполнять запрос на сервере (в InterBase нельзя). Теоретически можно посмотреть ExecuteVarchar в FireBird 1.5 но из нее нельзя делать селект. Но можно сделать инсерт куда-нибудь а потом уже то что вставили отбирать для клиента. Или вообще формируй строку запроса отдавай ее клиенту и пусть он ее выполняет.
← →
Zacho (2003-04-14 08:01) [5]
> Sergey Masloff (14.04.03 07:49)
Из FB 1.5 Beta 4 Release Notes:
* Improved EXECUTE STATEMENT.
Now it"s possible to return values from the dynamic SQL.
Syntax:
EXECUTE STATEMENT INTO ; (singleton form)
or
FOR EXECUTE STATEMENT INTO DO ;
Contributor(s):
Alexander Peshkoff
← →
Z_man7777 (2003-04-14 09:09) [6]Все понятно. Значит нельзя так делать. Очень обидно!!! Видимо мне еще нужно практиковаться и практиковаться с InterBase-ом.
Спасибо всем!!!
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.05.01;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.007 c