所以我在Oracle数据库的SQL转储中有一些Oracle TIMESTAMP。我想将其导入Derby数据库。在Oracle中,SQL语句看起来像:
Insert into TABLE_NAME (COL1, COL2, COL3)
values (
'blah',
to_timestamp('17-MAR-11 15.52.25.000000000','DD-MON-RR HH24.MI.SS.FF'),
'blah'
);
COL2的类型为TIMESTAMP。当我在Derby中运行它时,我可以预测得到“错误:'TO_TIMESTAMP'不被识别为函数或过程。”
那么如何在Derby中插入TIMESTAMP,更具体地说,我如何将上述SQL语句转换为可在Derby中执行的SQL语句?
答案 0 :(得分:3)
由于Derby是一个Java数据库,您将通过JDBC访问它,因此您可以使用JDBC转义格式来指定时间戳值:
INSERT INTO TABLE_NAME (COL1, COL2, COL3)
VALUES ('blah', {ts '2011-03-17 15:52:25'}, 'blah');
但它需要您将文字值重新格式化为ISO格式。
如果通过JDBC工具运行,上述语句也适用于Oracle。