diff -aur mysqlcompat-1.0b3.orig/datetime.sql mysqlcompat-1.0b3/datetime.sql --- mysqlcompat-1.0b3.orig/datetime.sql 2005-12-10 06:26:53.000000000 +0100 +++ mysqlcompat-1.0b3/datetime.sql 2008-12-19 10:39:12.000000000 +0100 @@ -503,6 +503,11 @@ SELECT $3 + ($2 operator(pg_catalog.||) ' ' operator(pg_catalog.||) $1)::interval $$ IMMUTABLE STRICT LANGUAGE SQL; +CREATE OR REPLACE FUNCTION timestampadd(text, integer, timestamp with time zone) +RETURNS timestamp with time zone AS $$ + SELECT $3 + ($2 operator(pg_catalog.||) ' ' operator(pg_catalog.||) $1)::interval +$$ IMMUTABLE STRICT LANGUAGE SQL; + -- TIMESTAMPDIFF() -- Note that first parameter needs to be quoted in this version @@ -650,10 +655,10 @@ RETURNS text AS $$ SELECT CASE WHEN EXTRACT(WEEK FROM $1)::integer = 53 THEN - pg_catalog.lpad(EXTRACT(YEAR FROM $1) - 1, 4, '0') || '53' + pg_catalog.lpad((EXTRACT(YEAR FROM $1) - 1)::text, 4, '0') || '53' ELSE - pg_catalog.lpad(EXTRACT(YEAR FROM $1) - 1, 4, '0') - || pg_catalog.lpad(EXTRACT(WEEK FROM $1), 2, '0') + pg_catalog.lpad((EXTRACT(YEAR FROM $1) - 1)::text, 4, '0') + || pg_catalog.lpad(EXTRACT(WEEK FROM $1)::text, 2, '0') END $$ IMMUTABLE STRICT LANGUAGE SQL; diff -aur mysqlcompat-1.0b3.orig/string.sql mysqlcompat-1.0b3/string.sql --- mysqlcompat-1.0b3.orig/string.sql 2005-12-13 02:41:19.000000000 +0100 +++ mysqlcompat-1.0b3/string.sql 2008-12-19 10:39:42.000000000 +0100 @@ -189,7 +189,7 @@ -- XXX: WILL fail if $2 is '0' CREATE OR REPLACE FUNCTION export_set(bigint, text, text, text, integer) RETURNS text AS $$ - SELECT pg_catalog.rtrim(pg_catalog.replace(pg_catalog.replace(reverse(pg_catalog.lpad(bin($1), $5, '0')), 1, $2 operator(pg_catalog.||) $4), 0, $3 operator(pg_catalog.||) $4), $4) + SELECT pg_catalog.rtrim(pg_catalog.replace(pg_catalog.replace(reverse(pg_catalog.lpad(bin($1), $5, '0')), '1', $2 operator(pg_catalog.||) $4), '0', $3 operator(pg_catalog.||) $4), $4) $$ IMMUTABLE STRICT LANGUAGE SQL; CREATE OR REPLACE FUNCTION export_set(bigint, text, text, text) @@ -682,7 +682,7 @@ -- Depends on: CONV() CREATE OR REPLACE FUNCTION oct(integer) RETURNS text AS $$ - SELECT conv($1, 10, 8) + SELECT conv($1::text, 10, 8) $$ IMMUTABLE STRICT LANGUAGE SQL; -- OCTET_LENGTH()