是否有一种简单的方法可以在SQL脚本中确定ORACLE表分区功能是否可用?
如果功能可用,我想创建一些表作为分区表,否则应该正常创建表。我有一个带有我的DDL的脚本,我用它来通过sqlplus设置数据库。
感谢。
JeHo
答案 0 :(得分:6)
以下查询将告诉您是否启用了分区:
select value from v$option where parameter = 'Partitioning';
答案 1 :(得分:1)
如果分区不可用,那么您应该收到此错误:
ORA-00439: feature not enabled: Partitioning
所以你可以在你的脚本中编写PL / SQL来创建这样的表:
declare
no_partioning exception;
pragma exception_init (no_partioning, -439);
begin
execute immediate 'CREATE TABLE mytable ...'; -- with partioning clauses
exception
when no_partioning then
execute immediate 'CREATE TABLE mytable ...'; -- without partioning clauses
end;
/