-- -- procedure timezone__add_rule/8 -- select define_function_args('timezone__add_rule','tz,abbrev,isdst_p,gmt_offset,utc_start,utc_end,local_start,local_end'); CREATE OR REPLACE FUNCTION timezone__add_rule( p_tz varchar, p_abbrev varchar, p_isdst_p integer, p_gmt_offset varchar, p_utc_start varchar, p_utc_end varchar, p_local_start varchar, p_local_end varchar ) RETURNS integer AS $$ DECLARE BEGIN insert into timezone_rules (tz_id, abbrev, utc_start, utc_end, local_start, local_end, gmt_offset, isdst_p) select timezone__get_id(p_tz), p_abbrev, rdbms_date(p_utc_start), rdbms_date(p_utc_end), rdbms_date(p_local_start), to_date(p_local_end), p_gmt_offset, case p_isdst_p when 0 then 'f' else 't'end; END; $$ LANGUAGE plpgsql;