SELECT FIRST 1
TO_CHAR(CURRENT , '%Y/%m/%d %R:%S')
,TO_CHAR(CURRENT , '%Y/%m/%d %I:%M:%S %p')
FROM systables
回傳
2012/09/12 14:06:14 2012/09/12 02:06:14 下午
2012/09/27:
今天把寫好的SP拿到客戶的環境上執行
結果有個FUNCTION一直 出現 Invalid era, could not assign era date
怪怪,公司跑得好好的說.
查了半天之前用舊方法將國曆數字轉成西元日期,遇到客戶的環境沒有指定DBDATE格式,造成以下的寫法一直有問題
DEFINE p_date date
SELECT (((substr((in_date+19110000)::char(8),1,4))||'-'||
(substr((in_date+19110000)::char(8),5,2))||'-'||
(substr((in_date+19110000)::char(8),7,2)))::date)
INTO p_date FROM empty;
改成以下寫法就OK
SELECT (TO_DATE((in_date+19110000)::char(8),'%Y%m%d'))
INTO p_date FROM empty;
原來一直搞不懂為什麼INFORMIX中,有today 和current 二個方法
直到今天才知道, today的格式是跟隨著DBDATE的設定回傳日期及時間, current則是回傳固定格式的日期及時間
以下是客戶環境, DBDATE沒指定,所以預設應跟著DB_LOCALE=zh_TW.big5
today | current |
中華民國101年10月3日 星期三 | 2012-10-03 16:55:28.00 |
以下是公司環境, DBDATE=Y4MD-
today | current |
2012/10/03 | 2012-10-03 16:55:28.00 |
沒有留言:
張貼留言