示例DDL脚本:
CREATE table Username."table_name" ( "Col1" NUMBER(*,0),"Col2" VARCHAR2(50 BYTE),"Col3" VARCHAR2(50 BYTE) ) SEGMENT CREATION DEFERRED PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING tableSPACE "USERS" ;Error report -sql Error: ORA-00439: feature not enabled: Deferred Segment Creation00439. 00000 - "feature not enabled: %s"*Cause: The specifIEd feature is not enabled.*Action: Do not attempt to use this feature.
如果我删除DDL脚本中的SEGMENT CREATION DEFERRED:
CREATE table Username."table_name" ( "Col1" NUMBER(*,"Col3" VARCHAR2(50 BYTE) ) PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING tableSPACE "USERS" ;
这有效.但我无法在每个表脚本中手动删除它.
如果我有.dmp转储文件,那么以下语法也将解决问题;在源实例上:
EXPDP user/pwd dumpfile=somename.dmp directory=DATA_DUMP_DIR nologfile=Y version=10.2
并在目标实例上
IMPDP user/pwd dumpfile=somename.dmp directory=DATA_DUMP_DIR nologfile=Y version=10.2
但是我没有.dmp文件,我只有一个.sql文件.
这是最好的方法吗?
解决方法 延迟段创建选项 is not available in Oracle 11g Express Edition (XE),这是您正在使用的.它只有 available in Enterprise Edition (EE).如果您不想进行导出/导入并且只能使用已提供的脚本文件,则唯一的选择是查找并删除SEGMENT CREATION DEFERRED子句的所有实例.
当然,任何文本编辑都可以在sql Worksheet窗口中执行,也可以使用sql Developer has its own find/replace.
总结以上是内存溢出为你收集整理的oracle – 未启用延迟段创建功能(ORA-00439)全部内容,希望文章能够帮你解决oracle – 未启用延迟段创建功能(ORA-00439)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)