0

我在 AWM 中手动创建了一个立方体,并将其导出为模板。但是当我尝试使用 导入它时 dbms_cube.import_xml('/app/oracle/product/11.2.0/XML_DIR','test.xml'),它会引发 ORA-00972 错误。

ORA-00972: 
ORA-06512:  "SYS.DBMS_LOB", line 744
ORA-06512:  "SYS.DBMS_CUBE", line 334
ORA-06512:  "SYS.DBMS_CUBE", line 478
ORA-06512:  "SYS.DBMS_CUBE", line 491
ORA-06512:  line 1
00972. 00000 -  "identifier is too long"

我可以使用 AWM 成功导入模板。

4

1 回答 1

1

IMPORT_XML过程需要数据库目录对象的名称,而不是操作系统目录路径。

您传递的值被视为目录对象的名称,如DBA_DIRECTORIES等所示。因此,对象命名规则将长度限制为 30 个字符。您正在传递一个 34 个字符的路径,它太长而不能成为对象名称(标识符),它是生成 ORA-00972 的路径;但即使它更短,它也不是有效的数据库目录对象名称。

如果您有一个针对 path 定义的目录对象,您可以将其称为:XML_DIR/app/oracle/product/11.2.0/XML_DIR

dbms_cube.import_xml('XML_DIR','test.xml')

您可以在文档中阅读有关创建目录对象的更多信息。

于 2013-05-30T13:14:14.270 回答