Вниз
Скачать: CL | DM;

Хранимая процедура   Найти похожие ветки 

← →
Мученик   (2002-12-06 12:08) [0]

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

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

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


← →
Prooksius ©   (2002-12-06 12:12) [1]

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


← →
FreeLancer ©   (2002-12-06 12:19) [2]


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

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


← →
ЮЮ ©   (2002-12-06 12:23) [3]

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

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





← →
Romkin ©   (2002-12-06 12:35) [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:53) [5]

спасибо


← →
ЮЮ ©   (2002-12-06 13:21) [6]

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


← →
ЮЮ ©   (2002-12-06 13:23) [7]

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



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.013 c
1-85985
Daf
2002-12-15 11:33
2002.12.26
Mid в ресурс


3-85821
mio
2002-12-03 14:11
2002.12.26
НЕ-сетевой обмен данными между двумя БД


14-86097
D-NICKNAME
2002-12-03 23:20
2002.12.26
Сочетание клавиш.


1-85924
iNew
2002-12-17 06:36
2002.12.26
Как запихать текст в ProgressBar. Lable не плдходит так, как


1-86007
dolmat
2002-12-16 10:14
2002.12.26
Что сделать с железом?




   Наверх