TIMESTAMP(0)WITH TIME ZONE数据类型的Oracle示例值

时间:2014-04-07 12:56:08

标签: sql oracle

您好,数据类型为TIMESTAMP的列的示例值是什么?

需要一些插入操作。 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"

1 个答案:

答案 0 :(得分: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

我省略了FF format element,因为你不需要小数秒。

我还将John周围的双引号更改为单引号,以阻止它被解释为标识符。