【问题标题】:ORA-14752: Interval expression is not a constant of the correct typeORA-14752: 区间表达式不是正确类型的常量
【发布时间】:2015-07-24 11:40:05
【问题描述】:

我正在尝试创建一个每天都有分区的表。 但这里的日期列是数字数据类型。

我遇到以下错误:

ORA-14752: Interval expression is not a constant of the correct type

下面是创建表的代码:

CREATE TABLE TEST_PART
(BDATE NUMBER,
REGION_ID NUMBER
)
PARTITION BY RANGE (BDATE)
INTERVAL (NUMTODSINTERVAL(7,'day'))
(PARTITION p_1 VALUES LESS THAN (to_date('20150101','yyyymmdd')));

我如何做到这一点?

【问题讨论】:

  • 为什么不以正确的数据类型存储日期?这是自找麻烦。
  • 是的,根据其 in number 数据类型的要求。因为他们在报告中使用相同的格式。 .无法更改数据类型。 @OldProgrammer

标签: oracle11g database-administration


【解决方案1】:

我认为这应该可以解决您的问题:

CREATE TABLE TEST_PART
(BDATE NUMBER,
REGION_ID NUMBER
)
PARTITION BY RANGE (BDATE) 
INTERVAL(7)
(  PARTITION p_1 VALUES LESS THAN(20150101)
);

【讨论】:

  • 解释所提供的解决方案为何有效会很有帮助。
猜你喜欢
  • 2016-04-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-22
  • 2017-08-20
  • 2017-03-30
  • 2020-02-17
  • 1970-01-01
相关资源
最近更新 更多