<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
	<channel>
		<title><![CDATA[Forum PostgreSQL - Tworzenie nowej tabeli przez funkcję]]></title>
		<link>https://forum.postgresql.org.pl/viewtopic.php?id=399</link>
		<description><![CDATA[Najświeższe odpowiedzi w Tworzenie nowej tabeli przez funkcję.]]></description>
		<lastBuildDate>Sat, 13 Feb 2010 16:05:28 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Odp: Tworzenie nowej tabeli przez funkcję]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=1840#p1840</link>
			<description><![CDATA[Problem rozwiązany - pomogła zmiana typu zmiennych z text na char(n).]]></description>
			<author><![CDATA[dummy@example.com (MM)]]></author>
			<pubDate>Sat, 13 Feb 2010 16:05:28 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=1840#p1840</guid>
		</item>
		<item>
			<title><![CDATA[Odp: Tworzenie nowej tabeli przez funkcję]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=1839#p1839</link>
			<description><![CDATA[Dodaję dane:

[code]
INSERT INTO test (nazwa, czas) VALUES ('a', 'b');
[/code]

i ukazuje się taki błąd
[code]
Error code 0, SQL state 42601: ERROR: syntax error at or near "b"
[/code]


Trigger mam zadeklarowny w ten sposób:
[code]
CREATE TRIGGER trg AFTER INSERT ON test EXECUTE PROCEDURE temp();
[/code]]]></description>
			<author><![CDATA[dummy@example.com (MM)]]></author>
			<pubDate>Sat, 13 Feb 2010 12:17:33 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=1839#p1839</guid>
		</item>
		<item>
			<title><![CDATA[Odp: Tworzenie nowej tabeli przez funkcję]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=1838#p1838</link>
			<description><![CDATA[No to jeszcze zacytuj błąd jaki występuje.]]></description>
			<author><![CDATA[dummy@example.com (rski)]]></author>
			<pubDate>Sat, 13 Feb 2010 11:10:00 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=1838#p1838</guid>
		</item>
		<item>
			<title><![CDATA[Odp: Tworzenie nowej tabeli przez funkcję]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=1837#p1837</link>
			<description><![CDATA[Faktycznie wkradł się mały błąd. Poprawione już.]]></description>
			<author><![CDATA[dummy@example.com (MM)]]></author>
			<pubDate>Sat, 13 Feb 2010 10:46:24 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=1837#p1837</guid>
		</item>
		<item>
			<title><![CDATA[Odp: Tworzenie nowej tabeli przez funkcję]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=1836#p1836</link>
			<description><![CDATA[[quote]
 a := test || nazwa_serwisu;
[/quote]
a co to niby ma robić, bo jeśli dobrze wiedzę to 'test' to nazwa tabeli tak?]]></description>
			<author><![CDATA[dummy@example.com (rski)]]></author>
			<pubDate>Sat, 13 Feb 2010 10:20:48 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=1836#p1836</guid>
		</item>
		<item>
			<title><![CDATA[Tworzenie nowej tabeli przez funkcję]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=1834#p1834</link>
			<description><![CDATA[Witam

Zmagam się z następującym problemem:
Po dodaniu nowych wartości do tabeli [b]test[/b] funkcja [b]temp[/b] powinna utworzyć nową tabelę o nazwie zależnej od tych wprowadzonych wartości.
np. po dodaniu 
[code]
INSERT INTO test (nazwa, czas) VALUES ('a', 'b');
[/code]

powinna utworzyć się tabela o nazwie [b]Temperatura_ab[/b]

Niestety problem wystepuje przy próbie połączenia tych 2 wartości i przypisania ich do zmiennej a. 




[code]
CREATE TABLE test (ID serial, nazwa char(20), czas char(4));
[/code]

[code]
CREATE OR REPLACE FUNCTION temp ()
RETURNS trigger AS '

DECLARE

    nazwa_serwisu text;     
    typ text;
    a text;


BEGIN

    SELECT nazwa INTO nazwa_serwisu FROM test WHERE id=(SELECT COUNT (*) FROM test);
    SELECT czas INTO typ FROM test WHERE id=(SELECT COUNT (*) FROM test);
    
    a := nazwa_serwisu || typ;

    execute '' CREATE TABLE Temperatura_''|| a ||''(nazwa char(20)) WITH OIDS'';

RETURN NEW;
END;
'
LANGUAGE 'plpgsql';
[/code]]]></description>
			<author><![CDATA[dummy@example.com (MM)]]></author>
			<pubDate>Fri, 12 Feb 2010 21:35:40 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=1834#p1834</guid>
		</item>
	</channel>
</rss>
