文档首页/ 数据库和应用迁移 UGO/ 用户指南/ 语法转换指南/ 转换错误码/ Oracle To GaussDB 转换错误码/ U0100035: 不支持定义包含不止一个字段的RECORD类型的常量
更新时间:2026-03-19 GMT+08:00
分享

U0100035: 不支持定义包含不止一个字段的RECORD类型的常量

描述

GaussDB不支持定义包含不止一个字段的RECORD类型的常量。

数据库类型与版本

  • 源库类型与版本:UGO 支持的 Oracle 版本。
  • 目标库类型与版本:UGO 支持的 GaussDB 版本。
CREATE OR REPLACE  PACKAGE MV_PKG_XML_INTERNAL IS
                         Type TypXml Is Record(
                           Id INTEGER);
                         Type TypAtributo Is Record(
                           Id INTEGER, len INTEGER);
                         cUltimo     Constant INTEGER := 12;
                         cAtributoRaiz Constant TypAtributo := Null;
                         Function  Is_Null( pAtributo TypAtributo ) Return Boolean;
                       end MV_PKG_XML_INTERNAL;
                       /

改造建议

首先定义type的默认值注释掉,然后在使用type的前面重新赋值默认值。

GaussDB修改后:

CREATE OR REPLACE PACKAGE MV_PKG_XML_INTERNAL IS
                         Type TypXml Is Record(
                           Id NUMBER(38));
                         Type TypAtributo Is Record(
                           Id NUMBER(38), len NUMBER(38));
                         cUltimo     Constant NUMBER(38)/* := 12*/;
                         cAtributoRaiz Constant TypAtributo/*:= Null*/;
                         Function  Is_Null( pAtributo TypAtributo ) Return Boolean;
                       end MV_PKG_XML_INTERNAL;
                       /

相关文档