将 Oracle 架构映射到 SQL Server 架构(OracleToSQL)

在 Oracle 中,每个数据库都有一个或多个架构。 默认情况下,oracle Microsoft SQL Server 迁移助手(SSMA)会将 Oracle 架构中的所有对象迁移到为架构命名的 SQL Server 数据库。 但是,可以自定义 Oracle 架构和 SQL Server 数据库之间的映射。

Oracle 和 SQL Server 架构

Oracle 数据库包含架构。 SQL Server 的一个实例包含多个数据库,每个数据库可以有多个架构。

在 Oracle 中,"架构" 的概念对应于 SQL Server 中的 "数据库" 及其中的一个架构。 例如,Oracle 可能具有名为 HR 的架构。 SQL Server 的实例可能有一个名为 SampleDatabase 的数据库,在该数据库中可能有多个架构。 默认情况下,Oracle 架构 HR 映射到 SQL Server 数据库和架构 SampleDatabase.HR。 SSMA 对“模式”的定义是在 SQL Server 中,数据库和模式的结合。

可以修改 Oracle 和 SQL Server 架构之间的映射。

修改目标数据库和架构

在 SSMA 中,可以将 Oracle 架构映射到任何可用的 SQL Server 架构。

修改数据库和架构

  1. 在 Oracle 元数据资源管理器中,选择 “架构”。

  2. 在右窗格中,选择“ 架构映射 ”选项卡。会看到所有 Oracle 架构的列表,后跟目标值。 此目标在 SQL Server 中以两部分表示法(database.schema)表示,其中你的对象和数据进行迁移。

  3. 选择包含要更改的映射的行,然后选择“ 修改”。

  4. “选择目标架构 ”对话框中,可以浏览可用的目标数据库和架构,或在两部分表示法的database.schema文本框中输入数据库和架构名称,然后选择“ 确定”。 目标在 “架构映射 ”选项卡上发生更改。

注释

选择单个数据库、架构文件夹或单个架构时,也可以使用“架构映射”选项卡。 架构映射选项卡中的列表已为所选对象自定义。

映射到 SQL Server 的模式

可以将源数据库映射到任何目标数据库。 默认情况下,源数据库映射到使用 SSMA 连接到的目标 SQL Server 数据库。 如果在 SQL Server 上不存在映射的目标数据库,系统会显示一条消息:“目标 SQL Server 元数据中不存在数据库和/或架构。” 它将在同步期间创建。 是否继续?选择“ ”。 同样,可以将架构映射到目标 SQL Server 数据库下不存在的架构,该架构是在同步期间创建的。

还原到默认数据库和架构

如果自定义 Oracle 架构和 SQL Server 架构之间的映射,则可以将映射还原回默认值。

若要还原到默认数据库和架构,请在“ 架构映射 ”选项卡下选择任意行,然后选择“ 重置为默认值”。