CHARをDB2 iSeriesのTIMESTAMPに変換する方法については、幸運にも助けてくれるでしょうか?DB2 AS/400システムでCHARをTIMESTAMPに変換する
例:20120216
期待される結果:16/2/2012 12:00:00 AM
MY UDF:
CREATE FUNCTION TEST.CONVERT_TO_TIMESTAMP (VAL CHARACTER VARYING(20))
RETURNS TIMESTAMP
LANGUAGE SQL
SPECIFIC TEST.CONVERT_TO_TIMESTAMP
MODIFIES SQL DATA
CALLED ON NULL INPUT
FENCED
DISALLOW PARALLEL
NO EXTERNAL ACTION
BEGIN ATOMIC
DECLARE SQLCODE INTEGER DEFAULT 0 ;
DECLARE RETCODE INTEGER DEFAULT 0 ;
DECLARE RET TIMESTAMP ;
DECLARE CONTINUE HANDLER FOR SQLEXCEPTION , SQLWARNING , NOT FOUND
BEGIN
SET RETCODE = SQLCODE ;
END ;
IF (VAL IS NOT NULL) THEN
SET RET = CAST (VAL AS TIMESTAMP) ;
ELSE
SET RET = NULL ;
END IF ;
RETURN RET ;
END
GO
-
そして、結果はNULLです:(
任意の提案?
のおかげ MRizq