POSTGRES 7.4.7 jak zrobic by funkcja zwracala wiecej jak jednawartosc
koralgol1955@o2.pl - 11-11-2006 00:54
POSTGRES 7.4.7 jak zrobic by funkcja zwracala wiecej jak jednawartosc
Mam wlasnie taki problem. NA wersji 8.1 nie ma problemu gdyz definiujac funkcje moge uzyc parametru np. (out c int8) jednak w wersji 7.4.7 parametr out jest niezaimplementowany. Musi byc wiec jakis sposob. Czy moglby mi ktos podac przyklad prostej funkcji uzywajacej plpgsql ktora pobiera select z bazy a nastepnie wynbik umieszcza w parametrach wyjsciowych a funkcja ta iThank you10:29:54
-- Wysłano z serwisu OnetNiusy: http://niusy.onet.pl
koralgol1955@o2.pl - 11-11-2006 00:54
a funkcja ta dzialac bedzie na wersji 7.4.7
-- Wysłano z serwisu OnetNiusy: http://niusy.onet.pl
koralgol1955@o2.pl - 11-11-2006 00:54
> > a funkcja ta dzialac bedzie na wersji 7.4.7 > > -- > Wysłano z serwisu OnetNiusy: http://niusy.onet.pl
POMOOOOOOOOOOOOOOOOOCYYYYYY!!!!!!!!!!!!! bardzo bardzo bardzo to potrzebuje...
do tej pory uzywalem firebirda i nie mialem problemow ..ale ten cholerny postgres od poczatku robil mi problemy
-- Wysłano z serwisu OnetNiusy: http://niusy.onet.pl
Paweł Matejski - 11-11-2006 00:54
koralgol1955@o2.pl wrote: >> a funkcja ta dzialac bedzie na wersji 7.4.7 >> >> -- >> Wysłano z serwisu OnetNiusy: http://niusy.onet.pl > > POMOOOOOOOOOOOOOOOOOCYYYYYY!!!!!!!!!!!!! > bardzo bardzo bardzo to potrzebuje...
A opłatę dodatkową za ekspresową odpowiedź wnisłeś?
> do tej pory uzywalem firebirda i nie mialem problemow ..ale ten cholerny > postgres od poczatku robil mi problemy
Nie wiem, jak w firebirdzie, ale w postgresie warto czytać dokumentacje.
Zdefiniuj sobie własny typ i taki typ zwracaj.
-- P.M.
koralgol1955@o2.pl - 11-11-2006 00:54
> koralgol1955@o2.pl wrote: > >> a funkcja ta dzialac bedzie na wersji 7.4.7 > >> > >> -- > >> Wysłano z serwisu OnetNiusy: http://niusy.onet.pl > > > > POMOOOOOOOOOOOOOOOOOCYYYYYY!!!!!!!!!!!!! > > bardzo bardzo bardzo to potrzebuje... > > A opłatę dodatkową za ekspresową odpowiedź wnisłeś? > > > do tej pory uzywalem firebirda i nie mialem problemow ..ale ten cholerny > > postgres od poczatku robil mi problemy > > Nie wiem, jak w firebirdzie, ale w postgresie warto czytać dokumentacje. > > Zdefiniuj sobie własny typ i taki typ zwracaj. > Wlasnie slyszalem o tym ale nie wiem jak W FUNKCJI WYPELNIC POLA TEGO TYPU danym zwracanymi z zapytanie czy moglbym poprosic prosy przyklad?
-- Wysłano z serwisu OnetNiusy: http://niusy.onet.pl
Paweł Matejski - 11-11-2006 00:54
koralgol1955@o2.pl wrote: >> koralgol1955@o2.pl wrote: >>>> a funkcja ta dzialac bedzie na wersji 7.4.7 >>>> >>>> -- >>>> Wysłano z serwisu OnetNiusy: http://niusy.onet.pl >>> POMOOOOOOOOOOOOOOOOOCYYYYYY!!!!!!!!!!!!! >>> bardzo bardzo bardzo to potrzebuje... >> A opłatę dodatkową za ekspresową odpowiedź wnisłeś? >> >>> do tej pory uzywalem firebirda i nie mialem problemow ..ale ten cholerny >>> postgres od poczatku robil mi problemy >> Nie wiem, jak w firebirdzie, ale w postgresie warto czytać dokumentacje. >> >> Zdefiniuj sobie własny typ i taki typ zwracaj. >> > Wlasnie slyszalem o tym ale nie wiem jak W FUNKCJI WYPELNIC POLA TEGO TYPU > danym zwracanymi z zapytanie > czy moglbym poprosic prosy przyklad?
Typ deklarujesz jak tabelę. A w funkcji:
declare zmienna moj_typ; begin ... zmienna.pole1 := 'cos'; ... return zmienna; end;
Jeśli chcesz się odwołać do poszczególnych pól w selekcie, to możesz napisać np. tak (pisze z pamięci):
select (moja_funkcja(parametr)).*;
Ale oczywiście możesz nadal posługiwać się zmienną typu złożonego i wtedy te nawiasy nie są potrzebne.
-- P.M.
koralgol1955@o2.pl - 11-11-2006 00:54
> koralgol1955@o2.pl wrote: > >> koralgol1955@o2.pl wrote: > >>>> a funkcja ta dzialac bedzie na wersji 7.4.7 > >>>> > >>>> -- > >>>> Wysłano z serwisu OnetNiusy: http://niusy.onet.pl > >>> POMOOOOOOOOOOOOOOOOOCYYYYYY!!!!!!!!!!!!! > >>> bardzo bardzo bardzo to potrzebuje... > >> A opłatę dodatkową za ekspresową odpowiedź wnisłeś? > >> > >>> do tej pory uzywalem firebirda i nie mialem problemow ..ale ten cholerny > >>> postgres od poczatku robil mi problemy > >> Nie wiem, jak w firebirdzie, ale w postgresie warto czytać dokumentacje. > >> > >> Zdefiniuj sobie własny typ i taki typ zwracaj. > >> > > Wlasnie slyszalem o tym ale nie wiem jak W FUNKCJI WYPELNIC POLA TEGO TYPU > > danym zwracanymi z zapytanie > > czy moglbym poprosic prosy przyklad? > > Typ deklarujesz jak tabelę. > A w funkcji: > > declare > *zmienna moj_typ; > begin > *... > *zmienna.pole1 := 'cos'; > *... > *return zmienna; > end;
> Jeśli chcesz się odwołać do poszczególnych pól w selekcie, to możesz napisać np. > tak (pisze z pamięci): > > select (moja_funkcja(parametr)).*; > > Ale oczywiście możesz nadal posługiwać się zmienną typu złożonego i wtedy te > nawiasy nie są potrzebne. > > -- > P.M. Dalej cos nie wychodzi robie tak:
CREATE TYPE jakistyp AS (f1 int4, f2 text);
CREATE OR REPLACE FUNCTION increment13(int8) RETURNS jakistyp AS ' declare jakistyp a; BEGIN a.f1=7; return a; END; ' LANGUAGE 'plpgsql' a nastepnie zapytanie: select increment13(1); //pewnie zle postgres wypluwa mi: ERROR: type "a" does not exist CONTEXT: compile of PL/pgSQL function "increment13" near line 2
rece mi opadaja
-- Wysłano z serwisu OnetNiusy: http://niusy.onet.pl
slawekj - 11-11-2006 00:54
> declare > jakistyp a; [ciach] > rece mi opadaja
pewnie powinno być odwrotnie
declare a jakistyp;
ręce opadają :)
pozdr Sławek
Paweł Matejski - 11-11-2006 00:54
koralgol1955@o2.pl wrote: >> koralgol1955@o2.pl wrote: >>>> koralgol1955@o2.pl wrote: >>>>>> a funkcja ta dzialac bedzie na wersji 7.4.7 >>>>>> >>>>>> -- >>>>>> Wysłano z serwisu OnetNiusy: http://niusy.onet.pl >>>>> POMOOOOOOOOOOOOOOOOOCYYYYYY!!!!!!!!!!!!! >>>>> bardzo bardzo bardzo to potrzebuje... >>>> A opłatę dodatkową za ekspresową odpowiedź wnisłeś? >>>> >>>>> do tej pory uzywalem firebirda i nie mialem problemow ..ale ten cholerny >>>>> postgres od poczatku robil mi problemy >>>> Nie wiem, jak w firebirdzie, ale w postgresie warto czytać dokumentacje. >>>> >>>> Zdefiniuj sobie własny typ i taki typ zwracaj. >>>> >>> Wlasnie slyszalem o tym ale nie wiem jak W FUNKCJI WYPELNIC POLA TEGO TYPU >>> danym zwracanymi z zapytanie >>> czy moglbym poprosic prosy przyklad? >> Typ deklarujesz jak tabelę. >> A w funkcji: >> >> declare >> zmienna moj_typ; >> begin >> ... >> zmienna.pole1 := 'cos'; >> ... >> return zmienna; >> end; > > >> Jeśli chcesz się odwołać do poszczególnych pól w selekcie, to możesz napisać > np. >> tak (pisze z pamięci): >> >> select (moja_funkcja(parametr)).*; >> >> Ale oczywiście możesz nadal posługiwać się zmienną typu złożonego i wtedy te >> nawiasy nie są potrzebne. >> >> -- >> P.M. > Dalej cos nie wychodzi robie tak: > > CREATE TYPE jakistyp AS > (f1 int4, > f2 text); > > CREATE OR REPLACE FUNCTION increment13(int8) > RETURNS jakistyp AS > ' > declare > jakistyp a;
^^^^^^^^^^ - to nie C, ma być odwrotnie: zmienna typ; :)
> ERROR: type "a" does not exist >
-- P.M.
koralgol1955@o2.pl - 11-11-2006 00:54
> koralgol1955@o2.pl wrote: > >> koralgol1955@o2.pl wrote: > >>>> koralgol1955@o2.pl wrote: > >>>>>> a funkcja ta dzialac bedzie na wersji 7.4.7 > >>>>>> > >>>>>> -- > >>>>>> Wysłano z serwisu OnetNiusy: http://niusy.onet.pl > >>>>> POMOOOOOOOOOOOOOOOOOCYYYYYY!!!!!!!!!!!!! > >>>>> bardzo bardzo bardzo to potrzebuje... > >>>> A opłatę dodatkową za ekspresową odpowiedź wnisłeś? > >>>> > >>>>> do tej pory uzywalem firebirda i nie mialem problemow ..ale ten cholerny > >>>>> postgres od poczatku robil mi problemy > >>>> Nie wiem, jak w firebirdzie, ale w postgresie warto czytać dokumentacje. > >>>> > >>>> Zdefiniuj sobie własny typ i taki typ zwracaj. > >>>> > >>> Wlasnie slyszalem o tym ale nie wiem jak W FUNKCJI WYPELNIC POLA TEGO TYPU > >>> danym zwracanymi z zapytanie > >>> czy moglbym poprosic prosy przyklad? > >> Typ deklarujesz jak tabelę. > >> A w funkcji: > >> > >> declare > >> * zmienna moj_typ; > >> begin > >> * ... > >> * zmienna.pole1 := 'cos'; > >> * ... > >> * return zmienna; > >> end; > > > > > >> Jeśli chcesz się odwołać do poszczególnych pól w selekcie, to możesz napisać > > np. > >> tak (pisze z pamięci): > >> > >> select (moja_funkcja(parametr)).*; > >> > >> Ale oczywiście możesz nadal posługiwać się zmienną typu złożonego i wtedy te > >> nawiasy nie są potrzebne. > >> > >> -- > >> P.M. > > Dalej cos nie wychodzi robie tak: > > > > CREATE TYPE jakistyp AS > > * *(f1 int4, > > * * f2 text); > > > > CREATE OR REPLACE FUNCTION increment13(int8) > > * RETURNS jakistyp AS > > ' > > declare > > jakistyp a; > > *^^^^^^^^^^ - to nie C, ma być odwrotnie: zmienna typ; :) > > > ERROR: *type "a" does not exist > > > > > -- > P.M.
opsssssssssss! :) dzieki dziala
-- Wysłano z serwisu OnetNiusy: http://niusy.onet.pl
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
[PostgreSQL] - jak =?ISO-8859-2?Q?zabezpieczy=E6_interesy_tw?==?ISO-8859-2?Q?=F3rcy_systemu_=3F=3F=3F?=
postgresql - int/int
postgresql Select count(*) czy raczej Select count(ID)
[postgresql] INSERT OR UPDATE - jak =?ISO-8859-2?Q?b=EAdzie_na?==?ISO-8859-2?Q?jlepiej=3F?=
[postgresql] kilka =?ISO-8859-2?Q?rekord=F3w_subquery_jako_?==?ISO-8859-2?Q?string?=
Postgres - replikcja master-master
Dopasowanie do "najlepszego" dopasowania :) [ PostgreSQL]
Problemy z =?ISO-8859-2?Q?instalacj=B1_PostgreSQL_na_syste?==?ISO-8859-2?Q?mach_Windows?=
=?ISO-8859-2?Q?[psql]_Polskie_t=B3umaczenie_?= =?ISO-8859-2?Q?licencji_BSD_dla_PostgreSQL=3F?=
[firebird] Czym =?ISO-8859-2?Q?zast=B1pi=E6_postgresowy_inte?==?ISO-8859-2?Q?rval_=3F?=
zanotowane.pldoc.pisz.plpdf.pisz.pllubiatowo.xlx.pl
Cytat
Decede mihi sole - nie zasłaniaj mi słonca. Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści Hoc fac - tak czyń. A tergo - od tyłu; z tyłu. I czarne włosy posiwieją. Safona |
|