2014-04-07 74 views
0

您好如何將數據類型爲TIMESTAMP的列的示例值?TIMESTAMP的Oracle示例值(0)WITH TIME ZONE數據類型

需要一些插入操作。 createdTimeTIMESTAMP(0) WITH TIME ZONE

INSERT INTO table1 values(<id>, <firstName>, <createdTime>); 

數據類型當我嘗試像下面

INSERT INTO table1 values(1, "John", TIMESTAMP '06-APR-14 06.00.42.000000000 PM ASIA/SINGAPORE'); 

給出了SQL錯誤;

SQL Error: ORA-01843: not a valid month 
01843. 00000 - "not a valid month" 
+0

http://stackoverflow.com/questions/588286/oracle-timestamp-with-timezone-named-zone-vs-offset –

回答

1

如果您使用的是timestamp literal,你必須使用特定的格式:

INSERT INTO table1 values(1, 'John', 
    TIMESTAMP '2014-04-06 18:00:42.0 ASIA/SINGAPORE'); 

你可以用to_timestamp_tz function通話更加靈活:

INSERT INTO table1 values(2, 'John', 
    TO_TIMESTAMP_TZ ('06-APR-14 06.00.42 PM ASIA/SINGAPORE', 
    'DD-MON-RR HH:MI:SS AM TZR')); 

SQL Fiddle demo

我省略了,因爲您不需要小數秒。

我也改變了雙引號John單引號,以阻止它被解釋爲一個標識符。

+0

感謝您的幫助和解釋! –

相關問題