ORA-14308: partition bound element must be one of: string, datetime or interval literal, number, or NULL
Cause: Partition bound list contained an element of invalid type (i.e. not a number, non-empty string, datetime or interval literal, or NULL)
Action: Ensure that all elements of partition bound list are of valid type
ORA-14308 是Oracle数据库管理系统的一个异常报错,用户在使用ALTER TABLE 命令的时候,可能会遇到这个异常报错。
这个错误的官方解释是:当试图创建或修改表分区界限时,说明不正确的界限元素。
常见的案例,就是手动在ALTER TABLE 语句中分配时指定了不正确的分区界限元素,而这些界限元素不是字符串、日期时间或间隔字面量,也不是数字,也不是NULL类型。
(1)可以采用以下两种方式检查并调整异常:一种是手动检查分区界限是否正确,确保在ALTER TABLE 语句中提供的界限是字符串、日期时间或间隔字面量,数字,或者NULL类型;另一种则是可以建立一个用于检查语句的游标,以收集失败时的异常,输出sql语句出错的具体位置,便于调整和纠正。
(2)确保修改的分区界限小于分区的最大值,如果分区已经满,应诸在表中创建新的分区。
(3)如果是从另一个表创建PARTITION,那么应在第二个表中添加可接受的分区界限,而且保证表中其他列与PARTITION BY 语句定义的列在类型上一致。