Template:Postgres function installation: Difference between revisions

From NEOSYS Dev Wiki
Jump to navigationJump to search
(New page: -- The latest version of this can be found in pgexodus.c CREATE OR REPLACE FUNCTION neo_call(bytea, bytea, bytea, bytea, bytea, int4, int4) RETURNS bytea AS 'pgexodus', 'neo_call' LANGUAG...)
 
mNo edit summary
Line 1: Line 1:
-- The latest version of this can be found in pgexodus.c
-- The latest version of this can be found in pgexodus.c


CREATE OR REPLACE FUNCTION neo_call(bytea, bytea, bytea, bytea, bytea, int4, int4)
CREATE OR REPLACE FUNCTION exodus_call(bytea, bytea, bytea, bytea, bytea, int4, int4)
RETURNS bytea
RETURNS bytea
AS 'pgexodus', 'neo_call' LANGUAGE C IMMUTABLE;
AS 'pgexodus', 'exodus_call' LANGUAGE C IMMUTABLE;


CREATE OR REPLACE FUNCTION neo_extract_bytea(bytea, int4, int4, int4)
CREATE OR REPLACE FUNCTION exodus_extract_bytea(bytea, int4, int4, int4)
RETURNS bytea AS 'pgexodus', 'neo_extract_bytea' LANGUAGE C IMMUTABLE;
RETURNS bytea AS 'pgexodus', 'exodus_extract_bytea' LANGUAGE C IMMUTABLE;


CREATE OR REPLACE FUNCTION neo_extract_text(bytea, int4, int4, int4)
CREATE OR REPLACE FUNCTION exodus_extract_text(bytea, int4, int4, int4)
RETURNS text
RETURNS text
AS 'pgexodus', 'neo_extract_text' LANGUAGE C IMMUTABLE;
AS 'pgexodus', 'exodus_extract_text' LANGUAGE C IMMUTABLE;


-- Remaining functions are STRICT therefore never get called with NULLS
-- Remaining functions are STRICT therefore never get called with NULLS
-- also return NULL if passed zero length strings
-- also return NULL if passed zero length strings


CREATE OR REPLACE FUNCTION neo_extract_text2(bytea, int4, int4, int4)
CREATE OR REPLACE FUNCTION exodus_extract_text2(bytea, int4, int4, int4)
RETURNS text
RETURNS text
AS 'pgexodus', 'neo_extract_text2' LANGUAGE C IMMUTABLE STRICT;
AS 'pgexodus', 'exodus_extract_text2' LANGUAGE C IMMUTABLE STRICT;


CREATE OR REPLACE FUNCTION neo_extract_date(bytea, int4, int4, int4)
CREATE OR REPLACE FUNCTION exodus_extract_date(bytea, int4, int4, int4)
RETURNS date
RETURNS date
AS 'pgexodus', 'neo_extract_date' LANGUAGE C IMMUTABLE STRICT;
AS 'pgexodus', 'exodus_extract_date' LANGUAGE C IMMUTABLE STRICT;


CREATE OR REPLACE FUNCTION neo_extract_time(bytea, int4, int4, int4)
CREATE OR REPLACE FUNCTION exodus_extract_time(bytea, int4, int4, int4)
RETURNS time
RETURNS time
AS 'pgexodus', 'neo_extract_time' LANGUAGE C IMMUTABLE STRICT;
AS 'pgexodus', 'exodus_extract_time' LANGUAGE C IMMUTABLE STRICT;


CREATE OR REPLACE FUNCTION neo_extract_datetime(bytea, int4, int4, int4)
CREATE OR REPLACE FUNCTION exodus_extract_datetime(bytea, int4, int4, int4)
RETURNS timestamp
RETURNS timestamp
AS 'pgexodus', 'neo_extract_datetime' LANGUAGE C IMMUTABLE STRICT;
AS 'pgexodus', 'exodus_extract_datetime' LANGUAGE C IMMUTABLE STRICT;

Revision as of 21:54, 13 April 2009

-- The latest version of this can be found in pgexodus.c

CREATE OR REPLACE FUNCTION exodus_call(bytea, bytea, bytea, bytea, bytea, int4, int4) RETURNS bytea AS 'pgexodus', 'exodus_call' LANGUAGE C IMMUTABLE;

CREATE OR REPLACE FUNCTION exodus_extract_bytea(bytea, int4, int4, int4) RETURNS bytea AS 'pgexodus', 'exodus_extract_bytea' LANGUAGE C IMMUTABLE;

CREATE OR REPLACE FUNCTION exodus_extract_text(bytea, int4, int4, int4) RETURNS text AS 'pgexodus', 'exodus_extract_text' LANGUAGE C IMMUTABLE;

-- Remaining functions are STRICT therefore never get called with NULLS -- also return NULL if passed zero length strings

CREATE OR REPLACE FUNCTION exodus_extract_text2(bytea, int4, int4, int4) RETURNS text AS 'pgexodus', 'exodus_extract_text2' LANGUAGE C IMMUTABLE STRICT;

CREATE OR REPLACE FUNCTION exodus_extract_date(bytea, int4, int4, int4) RETURNS date AS 'pgexodus', 'exodus_extract_date' LANGUAGE C IMMUTABLE STRICT;

CREATE OR REPLACE FUNCTION exodus_extract_time(bytea, int4, int4, int4) RETURNS time AS 'pgexodus', 'exodus_extract_time' LANGUAGE C IMMUTABLE STRICT;

CREATE OR REPLACE FUNCTION exodus_extract_datetime(bytea, int4, int4, int4) RETURNS timestamp AS 'pgexodus', 'exodus_extract_datetime' LANGUAGE C IMMUTABLE STRICT;