DB2
Publicado por Roberto (1 intervención) el 22/03/2004 20:17:01
Quisiera alguno me ayudara con entender porque en una funcion extraida del sistema (migrada previamente), el SQL final no es compatible para reintroducirla nuevamente.
CREATE FUNCTION ORA8.ADD_MONTHS(V_DATE TIMESTAMP,
V_NBMONTHS DOUBLE)
RETURNS TIMESTAMP
SPECIFIC SQL040122161553900
LANGUAGE SQL
NOT DETERMINISTIC
READS SQL DATA
CALLED ON NULL INPUT
EXTERNAL ACTION
BEGIN ATOMIC
DECLARE v_outdate TIMESTAMP;
--Is v_date the last day of the month ?
IF (MONTH(v_date + 1 DAYS) <> MONTH(v_date)) THEN
SET v_outdate = ORA8.last_day(v_date + CAST(v_nbmonths AS INT) MONTHS );
ELSE
SET v_outdate = v_date + CAST(v_nbmonths AS INT) MONTHS;
END IF;
RETURN v_outdate;
END
;
CREATE FUNCTION ORA8.ADD_MONTHS(V_DATE TIMESTAMP,
V_NBMONTHS DOUBLE)
RETURNS TIMESTAMP
SPECIFIC SQL040122161553900
LANGUAGE SQL
NOT DETERMINISTIC
READS SQL DATA
CALLED ON NULL INPUT
EXTERNAL ACTION
BEGIN ATOMIC
DECLARE v_outdate TIMESTAMP;
--Is v_date the last day of the month ?
IF (MONTH(v_date + 1 DAYS) <> MONTH(v_date)) THEN
SET v_outdate = ORA8.last_day(v_date + CAST(v_nbmonths AS INT) MONTHS );
ELSE
SET v_outdate = v_date + CAST(v_nbmonths AS INT) MONTHS;
END IF;
RETURN v_outdate;
END
;
Valora esta pregunta


0