<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Forum PostgreSQL - Problem z utworzeniem funkcji.]]></title>
	<link rel="self" href="http://forum.postgresql.org.pl/extern.php?action=feed&amp;tid=2272&amp;type=atom"/>
	<updated>2015-04-30T18:21:53Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.postgresql.org.pl/viewtopic.php?id=2272</id>
		<entry>
			<title type="html"><![CDATA[Odp: Problem z utworzeniem funkcji.]]></title>
			<link rel="alternate" href="https://forum.postgresql.org.pl/viewtopic.php?pid=5490#p5490"/>
			<content type="html"><![CDATA[Bardzo dziękuję ! Wykorzystałem pierwszy kod. Błędy okazały się głupie, jak zresztą zawsze ale grunt, że wszystko działa.
Jeszcze raz dziękuję.]]></content>
			<author>
				<name><![CDATA[Estpers]]></name>
				<uri>https://forum.postgresql.org.pl/profile.php?id=2368</uri>
			</author>
			<updated>2015-04-30T18:21:53Z</updated>
			<id>https://forum.postgresql.org.pl/viewtopic.php?pid=5490#p5490</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Odp: Problem z utworzeniem funkcji.]]></title>
			<link rel="alternate" href="https://forum.postgresql.org.pl/viewtopic.php?pid=5489#p5489"/>
			<content type="html"><![CDATA[To tylko błędy składniowe (nie wnikam w kod który napisałeś tylko poprawiam składnie) poniżej dwie prawie identyczne wersje twojej funkcji ale zalecam sposób 2

CREATE or REPLACE function sprawdz(int) RETURNS varchar
language 'plpgsql'
AS
'
declare
teraz timestamp;
przetrzymuje varchar(50);
begin
teraz := now() - interval ''1 month'';
if teraz > (select wypozyczenie.d_wypozyczenia from wypozyczenie where wypozyczenie.kto_wypozyczyl = $1)
then przetrzymuje := ''Przetrzymuje'';
else przetrzymuje := ''Nie przetrzymuje'';
end if;
return przetrzymuje;
end;
';

CREATE or REPLACE function sprawdz(int) RETURNS varchar
language 'plpgsql'
AS
$BODY$
declare
teraz timestamp;
przetrzymuje varchar(50);
begin
teraz := now() - interval '1 month';
if teraz > (select wypozyczenie.d_wypozyczenia from wypozyczenie where wypozyczenie.kto_wypozyczyl = $1)
then przetrzymuje := 'Przetrzymuje';
else przetrzymuje := 'Nie przetrzymuje';
end if;
return przetrzymuje;
end;$BODY$]]></content>
			<author>
				<name><![CDATA[c_michal]]></name>
				<uri>https://forum.postgresql.org.pl/profile.php?id=627</uri>
			</author>
			<updated>2015-04-30T06:23:20Z</updated>
			<id>https://forum.postgresql.org.pl/viewtopic.php?pid=5489#p5489</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Problem z utworzeniem funkcji.]]></title>
			<link rel="alternate" href="https://forum.postgresql.org.pl/viewtopic.php?pid=5488#p5488"/>
			<content type="html"><![CDATA[Witam,

Dostałem za zadanie napisanie funkcji, która sprawdza czy dany klient przetrzymuje wypożyczoną płytę dłużej niż miesiąc. 
Funkcja ta jest postaci:

CREATE or REPLACE function sprawdz(int) RETURNS varchar 
language 'plpgsql'
AS
'
declare
teraz timestamp := now() - interval '1 month';
przetrzymuje varchar(50);
begin
if teraz > (select wypozyczenie.d_wypozyczenia from wypozyczenie where wypozyczenie.kto_wypozyczyl = $1)
then przetrzymuje = 'Przetrzymuje';
else przetrzymuje = 'Nie przetrzymuje';
end if;
return przetrzymuje;
end;
';

Niestety wyrzuca mi błąd o następującej treści:
" BŁĄD: błąd składni lub blisko "1"
LINIA 6: teraz timestamp := now() - interval '1 month';
                                                             ^             "

Nie mam pojęcia co robię źle, dlatego prosiłbym o pomoc i z góry dziękuję.]]></content>
			<author>
				<name><![CDATA[Estpers]]></name>
				<uri>https://forum.postgresql.org.pl/profile.php?id=2368</uri>
			</author>
			<updated>2015-04-29T21:54:44Z</updated>
			<id>https://forum.postgresql.org.pl/viewtopic.php?pid=5488#p5488</id>
		</entry>
</feed>
