gpt4 book ai didi

database - 为什么Oracle数据库按区间创建分区时要求至少提供单个分区

转载 作者:搜寻专家 更新时间:2023-10-30 20:01:13 25 4
gpt4 key购买 nike

我想知道为什么 Oracle 数据库要求在创建 PARTITION BY RANGE INTERVAL 时至少定义一个分区

这是正确的:

创建表 FOO (
栏 VARCHAR2(10),
creation_date 时间戳(6)不为空
)
按范围分区 (creation_date) INTERVAL (NUMTODSINTERVAL(1,'DAY')) (
PARTITION part_01 值小于 (TO_DATE('01-03-2018','DD-MM-YYYY'))
)

但这不是:

创建表 FOO (
栏 VARCHAR2(10),
creation_date 时间戳(6)不为空
)
按范围分区(创建日期)间隔(NUMTODSINTERVAL(1,'DAY'))

我预计在某些迁移情况下需要第一个分区,但在创建新表时不需要。

关于那个的 Oracle 文档:

The INTERVAL clause of the CREATE TABLE statement establishes interval partitioning for the table. You must specify at least one range partition using the PARTITION clause. https://docs.oracle.com/cd/E11882_01/server.112/e25523/part_admin001.htm#BAJHFFBE

最佳答案

没有默认间隔 Oracle 不知道从哪里开始间隔。对于每日分区,它不是那么明显,但假设您每周有一个分区,即 7 天。

是周一到周一还是周日到周日还是其他时间?

间隔“1 天”是什么意思?从 00:00:00 - 23:59:59(在你的例子中隐含地给出)或其他东西,例如 12:00:00 - 11:59:59(这将是 PARTITION part_01 值小于( TO_DATE('01-03-2018 12:00','DD-MM-YYYY HH24:MI')))

关于database - 为什么Oracle数据库按区间创建分区时要求至少提供单个分区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49129160/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com