CREATE OR REPLACE FUNCTION tabsin(float,float,float) RETURNS BOOL AS ' DECLARE i NUMERIC(5,4); krok NUMERIC(5,4); do NUMERIC(5,4); BEGIN IF NOT EXISTS(SELECT relname FROM pg_class WHERE relname = ''tabsin'' AND relkind=''r'') THEN RAISE NOTICE ''Vytv���m tabulku tabsin''; CREATE TABLE tabsin (x NUMERIC(5,4) PRIMARY KEY, fx float); ELSE RAISE NOTICE ''Ru��m v�echny zaznamy v tabulce tabsin''; TRUNCATE TABLE tabsin; END IF; i := CAST($1 AS NUMERIC(5,4)); do := CAST($2 AS NUMERIC(5,4)); krok := CAST($3 AS NUMERIC(5,4)); WHILE i > do LOOP INSERT INTO tabsin VALUES(CAST(i AS NUMERIC(5,4)), SIN(CAST(i AS float))); i := i + krok; END LOOP; RETURN TRUE; END; ' LANGUAGE 'plpgsql';