格式化SysDate的默认值

时间:2013-02-18 06:55:33

标签: oracle database-design time

Oracle中的

,(使用pl-sql开发人员)如何在列中使用格式化的默认值? (像这样:to_char(sysdate,'HH:MM:SS'))

我想创建这个coumns>>

名称:f1

输入:日期

默认值:to_char(sysdate,'HH:MM:SS')

2 个答案:

答案 0 :(得分:4)

Oracle没有TIME列。即使您将列或变量设置为仅HH24:MI:SS,它仍将具有日期元素。

存储时间的问题在于没有日期可以使用它很少有用。那么为什么不将日期时间存储在一个列中呢?

但如果你真的,真的,真的只想把时间存储在“午夜之后”作为一个数字:

f1 number(5,0) default to_number(to_char(sysdate, 'sssss')) 

答案 1 :(得分:1)

日期类型值不依赖于格式 仅当将日期转换为字符串时,才会涉及格式化 您可以创建格式化的字符串值列:

create table t (
  id int,
  f1 varchar2(20) default to_char(sysdate, 'HH24:MI:SS')
);

SqlFiddle