Oracle中等效的PIC S9,长度为16

时间:2009-12-03 06:26:46

标签: sql oracle cobol

Oracle中长度为16的PIC S9相当于什么?我希望它用于存储时间戳。

3 个答案:

答案 0 :(得分:2)

实际上,在pro-COBOL中管理时间戳时,我会执行以下操作:

77 H-DATETIME PIC X(19).

在Oracle的观点中,我使用DateTime对象

当我想要检索该值时,我使用以下内容:

TO_CHAR(A.TIMESTAMP, 'YYYY-MM-DD-HH24-MI-SS')

当我想更新Oracle字段时,我使用以下内容:

TO_DATE(A.TIMESTAMP, 'YYYY-MM-DD-HH24-MI-SS')

我使用的格式允许排序和使用“SEARCH / SEARCHE ALL”。

希望这有帮助。

答案 1 :(得分:1)

不了解PIC S9,但Oracle有时间戳数据类型。

答案 2 :(得分:0)

如果要将日期或日期时间精确存储到秒,请使用DATE数据类型。如果您需要亚秒级粒度,请使用TIMESTAMP数据类型。

将日期作为数字或字符表示存储在oracle中被认为是一种非常糟糕的做法,因为它使日期验证和日期操作更加复杂,并且可能导致查询优化不佳。