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

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

Хранимая процедура [IB6.x]


Мученик ©   (2002-12-06 12:08:00) 

есть ли возвожность построить след конструкцию

declare procedure (par1...., par2....,....)
.....
begin
......
select * from db1, db2
where a.db1=a.db2 and
if (:par1 is not null) then b.db1=:par1
if (:par2 is not null) then c.db2=:par2
.....
suspend;
end

если это овзможно то как?
а то запрос с переменным числом параметров никак не получаеться вынести из клиента


ЮЮ   (2002-12-06 13:23:00) [1]

Сорри, не туда попал :-)


ЮЮ   (2002-12-06 13:21:00) [2]

Тогда эта таблица предназначена для хранения всего гарема в одной записи :-) Иначе не представляю, чего туда можно напихать


Мученик   (2002-12-06 12:53:00) [3]

спасибо


Romkin   (2002-12-06 12:35:00) [4]

Мда... язык от другого сервера, может, это подойдет?


create procedure (par1...., par2....,....)
.....
begin
......
for select <строго перечень полей> from db1, db2
where db1.a = db2.a and (:par1 is null or db1.b = :par1) and
(:par2 is null or db2.c = :par2)
into :... <выходные переменные, типы и кол-во соотв списку полей>
do begin
.....
suspend;
end
end


ЮЮ   (2002-12-06 12:23:00) [5]

это можно и в сам запрос запихать

select *
from db1, db2
where
db1.a = db2.a and
((:par1 is null) or (db1.b = :par1)) and ...




FreeLancer   (2002-12-06 12:19:00) [6]


> Prooksius © (06.12.02 12:12)
> Что такое
> a. b. c. ?

Да какая разница? Переменное число параметров и запросы такого вида в IB не живут (пока).


Prooksius   (2002-12-06 12:12:00) [7]

Что такое
a. b. c. ?


Наверх

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