2017-10-10 70 views
1

我正尝试在oracle中使用dbms_metadata.get_ddl函数从我们的开发数据库之一重新创建表。例如dbms_metadata.get_ddl ... DDL生成语法错误

SELECT dbms_metadata.get_ddl('TABLE','ogaPatch2892_TAB','XVIEWMGR')from dual; 

它确实产生,我需要但运行会产生错误

ORA-00904的DDL:无效的标识符

下面是DDL的语法时才:

CREATE TABLE "XVIEWMGR"."ogaPatch2892_TAB" OF XMLTYPE 
PCTFREE 10 
PCTUSED 40 
INITRANS 1 
MAXTRANS 255 
NOCOMPRESS 
LOGGING 
STORAGE (INITIAL 65536 
     NEXT 1048576 
     MINEXTENTS 1 
     MAXEXTENTS 2147483645 
     PCTINCREASE 0 
     FREELISTS 1 
     FREELIST GROUPS 1 
     BUFFER_POOL DEFAULT 
     FLASH_CACHE DEFAULT 
     CELL_FLASH_CACHE DEFAULT) 
TABLESPACE "TBSDATA" 
VARRAY "XMLEXTRA"."NAMESPACES" 
    STORE AS BASICFILE LOB "NAMESPACES2895_L" (
    ENABLE STORAGE IN ROW 
    CHUNK 8192 
    RETENTION 
    CACHE 
    STORAGE (INITIAL 65536 
      NEXT 1048576 
      MINEXTENTS 1 
      MAXEXTENTS 2147483645 
      PCTINCREASE 0 
      FREELISTS 1 
      FREELIST GROUPS 1 
      BUFFER_POOL DEFAULT 
      FLASH_CACHE DEFAULT 
      CELL_FLASH_CACHE DEFAULT)) 
VARRAY "XMLEXTRA"."EXTRADATA" 
    STORE AS BASICFILE LOB "EXTRADATA2894_L" (
    ENABLE STORAGE IN ROW 
    CHUNK 8192 
    RETENTION 
    CACHE 
    STORAGE (INITIAL 65536 
      NEXT 1048576 
      MINEXTENTS 1 
      MAXEXTENTS 2147483645 
      PCTINCREASE 0 
      FREELISTS 1 
      FREELIST GROUPS 1 
      BUFFER_POOL DEFAULT 
      FLASH_CACHE DEFAULT 
      CELL_FLASH_CACHE DEFAULT)) 
VARRAY "XMLDATA"."SYS_XDBPD$" 
    STORE AS BASICFILE LOB "SYS_XDBPD$2893_L" (
    ENABLE STORAGE IN ROW 
    CHUNK 8192 
    RETENTION 
    CACHE 
    STORAGE (INITIAL 65536 
      NEXT 1048576 
      MINEXTENTS 1 
      MAXEXTENTS 2147483645 
      PCTINCREASE 0 
      FREELISTS 1 
      FREELIST GROUPS 1 
      BUFFER_POOL DEFAULT 
      FLASH_CACHE DEFAULT 
      CELL_FLASH_CACHE DEFAULT)) 

回答

0

您只需按照以下步骤操作即可。无需指定存储参数。当DBA安装或设置数据库时,Oracle会自动选取默认值。

CREATE TABLE XVIEWMGR.ogaPatch2892_TAB OF XMLTYPE; 
+1

谢谢。你是对的只是想确保相应的lob段创建与这些名称封装在双引号。 –

+1

@ Mr.Eva您可以在执行dbms_metadata.get_ddl()时将Storage参数设置为false,以便输出应排除存储参数。阅读此http://www.dba-oracle.com/t_1_dbms_metadata.htm – XING