Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Dummy sp koja vraca result set

[es] :: Oracle :: Dummy sp koja vraca result set

[ Pregleda: 2800 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

gewra
Ivan Djuric
Beograd

Član broj: 43205
Poruke: 31
91.143.212.*



Profil

icon Dummy sp koja vraca result set07.02.2008. u 11:02 - pre 197 meseci
Treba da napravim procueduru koja vraca dummy podatke i ne kreira nista nad bazom na kojoj je pustena.
U ms sql-u sam to radio sam temp tabelama, tako sto u proceduri kreiram temp tabelu insertujem neke podatke u nju i zatim izvrsim select nad temp tabelom.
Kako to da uradim u oracle-u? Mozda Global Temporary table ili...
Jos jedanput napominjem da nad bazom na kojom pustam procduru ne smem (naravno osim te procedure) da napravim ni jedan objekat...

Hvala, Ivan!
 
Odgovor na temu

aldabic
Serbia

Član broj: 18240
Poruke: 98
*.premiumsoft.co.yu.



Profil

icon Re: Dummy sp koja vraca result set07.02.2008. u 12:02 - pre 197 meseci
Ako vec ima global temporary tabela, iskoristi ih. Ako ih neka, ne mozes ih praviti (i to je objekat u bazi)..

Kako mislis dummy podatke? Procedura ne vraca nista kao OUT parametar , nego puni neke druge tabele?

Ja koristim neke global tabele tipa tmp1, tmp2, tmp3, sa kolonama c01-c20 (varchar2), n01-n20 (number), d01-d20 (date), pa ih koristim u raznim programima da nesto izracunam, pripremium report i sl..

 
Odgovor na temu

gewra
Ivan Djuric
Beograd

Član broj: 43205
Poruke: 31
91.143.212.*



Profil

icon Re: Dummy sp koja vraca result set07.02.2008. u 12:46 - pre 197 meseci
Procedura treba da vrati result set tipa
FirstName LastName PersonalId.....
Paja Patak 15695333
Miki Maus 1528669
..............

E sad nigde u bazi ne postoje ovi podaci (jednostavno dummy podaci) i procedura treba da predstavlja neki interfejs prema nekom web servisu, nije ni bitno u ostalom.

Dakle poenta je da ne smem da napravim nikakav objekat koji ce ostati nakon izvrsavanja procedure u bazi osim te same procedure.

u tsql-u je procedura izgledala kao

CREATE PROCEDURE retrieveCustomerDetails
AS
BEGIN
CREATE TABLE #CUSTOMER
(
FirstName varchar(50) NOT NULL,
LastName varchar(50) NOT NULL,
............
)

INSERT INTO #Customer
VALUES('Paja', 'Patak')
.
.
.
SELECT * FROM #CUSTOMER

DROP TABLE #CUSTOMER
END

Dakle ovo mi treba na oracle-u!!!
 
Odgovor na temu

aldabic
Serbia

Član broj: 18240
Poruke: 98
*.premiumsoft.co.yu.



Profil

icon Re: Dummy sp koja vraca result set07.02.2008. u 12:52 - pre 197 meseci
Mozes da koristis record:

type proba_record is record (
p_redni_broj number(2),
p_pitanje varchar2(100)
);
type proba_i is table of proba_record index by binary_integer;

procedura:

procedure proba(klijent in number, result in out proba_i) is
cursor c1 is
select redni_broj, pitanje
from proba_tabela;
cur1 c1%rowtype;
i number(4);
begin
open c1;
i:=0;
loop
fetch c1 into cur1;
if c1%notfound then
exit;
end if;
i:=i+1;
result(i).p_pitanje:=cur1.pitanje;
result(i).p_redni_broj:=cur1.redni_broj;
end loop;
close c1;
exception when others then raise_application_error(-20101,sqlerrm);
end;

onda od nekud pozoves proceduru:

DECLARE
bk_data TEST_SCORE.SCORE_I;
BEGIN
test_score.unos_score(klijent, bk_data);
PLSQL_TABLE.POPULATE_BLOCK(bk_data, 'B1'); -- popunis blok u formsu
END;
 
Odgovor na temu

[es] :: Oracle :: Dummy sp koja vraca result set

[ Pregleda: 2800 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.