問:
這樣一個語句,
insert INTO test ( time) VALUES('2005-07-19 11:53:53')
在有的oracle數據庫上運行成功,有的機器上運行不成功。請問oracle中有這樣設置么?
( 當然,把它改成
insert INTO test ( time) VALUES(to_date('2005-07-19 11:53:53','YYYY-MM-DD HH24:MI:SS')) 肯定可以運行成功。)
還有一個小問題。oracle有沒有提供這種的轉換函數
把1104840333 轉化為2005-06-28 21:09:17 這種類型。 (1104840333 是從1970- 2005-06-28 21:09:17的秒數
答:
alter session set nls_date_format = 'YYYY-MM-DD HH24:MI:SS''
你的秒數是怎么算的,不對吧?
select (to_date('2005-06-28 21:09:17','yyyy-mm-dd hh24:mi:ss')-to_date('1970','yyyy'))*24*60*60 from dual
出來的結果是1104354557
這個問題可以這樣解決:
select to_date('19700101000000','yyyymmddhh24miss')+(1104840333/(24*60*60)) from dual
版權所有 羅明