映射 Oracle 和 SQL Server 数据类型 (OracleToSQL)

Oracle 数据库类型不同于 SQL Server 数据库类型。 在将 ASE 数据库对象转换为 SQL Server 对象时,必须指定如何将数据类型从 Oracle 映射到 SQL Server。 可以接受默认数据类型映射,也可以自定义映射,如以下各部分所示。

默认映射

SSMA 具有一组默认的数据类型映射。 有关默认映射的列表,请参阅项目设置(类型映射)(OracleToSQL)

类型映射继承

可以在项目级别、对象类别级别(如所有存储过程)或对象级别自定义类型映射。 除非在较低级别覆盖,否则设置继承自更高级别。 例如,如果在项目级别将 smallmoney 映射到 money,项目中的所有对象都将使用此映射,除非在对象或类别级别自定义映射。

在 SSMA 中查看“类型映射”选项卡时,背景采用颜色编码来显示继承的类型映射。 对于任何继承的类型映射,类型映射的背景为黄色;对于当前级别指定的任何映射,类型映射的背景为白色。

自定义数据类型映射

以下过程演示如何在项目、数据库或对象级别映射数据类型:

要映射数据类型

  1. 要自定义整个项目的数据类型映射,请打开“项目设置”对话框:

    1. 在“工具”菜单上,选择“项目设置”。

    2. 在左侧窗格中,选择“类型映射”。

      类型映射图表和按钮显示在右侧窗格中。

    或者,要在数据库、表、视图或存储过程级别自定义数据类型映射,请在 Oracle 元数据资源管理器中选择数据库、对象类别或对象:

    1. 在 Oracle 元数据资源管理器中,选择要自定义的文件夹或对象。

    2. 在右侧窗格中,单击“类型映射”选项卡。

  2. 要添加新映射,请执行以下操作:

    1. 单击“添加”。

    2. 在“源类型”下,选择要映射的 Oracle 数据类型。

    3. 如果类型需要长度,请在“自”框中指定映射的最小数据长度,并在“至”框中指定映射的最大数据长度。

      如此就可以为相同数据类型的较小值和较大值自定义数据映射。

    4. 在“目标类型”下,选择目标 SQL Server 数据类型。

      某些类型需要目标数据类型长度。 如果需要,请在“替换为”框中输入新的数据长度。

    5. 选择“确定”

  3. 要修改数据类型映射,请执行以下操作:

    1. 单击“编辑”。

    2. 在“源类型”下,选择要映射的 Oracle 数据类型。

    3. 如果类型需要长度,请在“自”框中指定映射的最小数据长度,并在“至”框中指定映射的最大数据长度。

      如此就可以为相同数据类型的较小值和较大值自定义数据映射。

    4. 在“目标类型”下,选择目标 SQL Server 数据类型。

      某些类型需要目标数据类型长度。 如果需要,请在“替换为”框中输入新的数据长度,然后选择“确定”。

  4. 若要删除自定义数据类型映射,请执行以下操作:

    1. 在类型映射列表中选择包含了要删除的数据类型映射的行。

    2. 单击“移除”。

      无法移除继承的映射。 不过,特定对象或对象类别的自定义映射会重写继承的映射。

后续步骤

迁移过程的下一步是创建评估报告将 Oracle 数据库对象转换为 SQL Server 语法。 如果创建评估报告,会在评估期间自动转换 Oracle 对象。

另请参阅

将 Oracle 数据库迁移到 SQL Server (OracleToSQL)