dbms_metadata.get_ddl ...DDL 生成抛出语法错误
dbms_metadata.get_ddl ...the DDL produce throws a syntax error
我正在尝试使用 oracle 中的 dbms_metadata.get_ddl 函数从我们的开发数据库之一重新创建 table。例如
SELECT dbms_metadata.get_ddl('TABLE','ogaPatch2892_TAB','XVIEWMGR')from dual;
它确实生成了我需要的 DDL,但是 运行 它生成了一个错误
ORA-00904: : invalid identifier
以下是 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_XDBPD93_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))
您只需按以下步骤操作即可。无需指定存储参数。 Oracle 将自动选取数据库安装或由 DBA 设置时设置的默认值。
CREATE TABLE XVIEWMGR.ogaPatch2892_TAB OF XMLTYPE;
我正在尝试使用 oracle 中的 dbms_metadata.get_ddl 函数从我们的开发数据库之一重新创建 table。例如
SELECT dbms_metadata.get_ddl('TABLE','ogaPatch2892_TAB','XVIEWMGR')from dual;
它确实生成了我需要的 DDL,但是 运行 它生成了一个错误
ORA-00904: : invalid identifier
以下是 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_XDBPD93_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))
您只需按以下步骤操作即可。无需指定存储参数。 Oracle 将自动选取数据库安装或由 DBA 设置时设置的默认值。
CREATE TABLE XVIEWMGR.ogaPatch2892_TAB OF XMLTYPE;