将转换数据库对象加载到 SQL Server (OracleToSQL)

将 Oracle 架构转换为 SQL Server 之后,可以将生成的数据库对象加载到 SQL Server 中。 用户可以让 SSMA 创建对象,也可以编写对象脚本并自行运行脚本。 此外,还可以让 SSMA 使用 SQL Server 数据库的实际内容更新目标元数据。

在同步和脚本之间进行选择

如果要在不修改的情况下将转换后的数据库对象加载到 SQL Server,则可以让 SSMA 直接创建或重新创建数据库对象。 此方法快速且简便,但不允许自定义用来定义 SQL Server 对象(而不是存储过程)的 Transact-SQL 代码。

如果希望修改用来创建对象的 Transact-SQL,或者希望加强对对象创建过程的控制,请使用 SSMA 创建 Transact-SQL 脚本。 随后,可以修改这些脚本,单独创建每个对象,甚至使用 SQL Server 代理来安排创建这些对象。

使用 SSMA 将对象与 SQL Server 同步

要使用 SSMA 创建 SQL Server 数据库对象,请在 SQL Server 元数据资源管理器中选择相应的对象,然后将这些对象与 SQL Server 同步,如以下过程所示。 默认情况下,如果 SQL Server 中已经存在这些对象,而且 SSMA 元数据比 SQL Server 中的这些对象新,SSMA 将更改 SQL Server 中的对象定义。 编辑“项目设置”可更改默认行为。

注意

可以选择未从 Oracle 数据库转换的现有 SQL Server 数据库对象。 不过,SSMA 不会重新创建或更改这些对象。

要将对象与 SQL Server 同步

  1. 在 SQL Server 元数据资源管理器中,展开顶部的 SQL Server 节点,然后展开“数据库”。

  2. 选择要处理的对象:

    • 要同步完整的数据库,请选中数据库名称旁边的复选框。

    • 要同步或省略单个对象或对象类别,请选中或清除对象或文件夹旁边的复选框。

  3. 在选择了要在 SQL Server 元数据资源管理器中处理的对象之后,右键单击“数据库”,然后单击“与数据库同步”。

    还可以通过右键单击对象或其父文件夹,然后单击“与数据库同步”来同步单个对象或对象类别。

    之后,SSMA 将显示“与数据库同步”对话框,其中会展示两组项目。 在左侧,SSMA 会显示以树表示的所选数据库对象。 右侧会显示代表 SSMA 元数据中相同对象的树。 单击右侧或左侧的“+”按钮可展开树。 同步方向显示在两个树之间的“操作”列中。

    操作符号呈现三种状态:

    • 向左键头表示元数据的内容会保存在数据库中(默认设置)。

    • 向右键头表示数据库内容会覆盖 SSMA 元数据。

    • 叉号表示不会采取任何操作。

单击操作符号可更改状态。 单击“与数据库同步”对话框的“确定”按钮时,便会执行实际同步。

编写对象脚本

要保存转换后的数据库对象的 Transact-SQL 定义,或者希望亲自更改对象定义并运行脚本,可以将转换后的数据库对象定义保存到 Transact-SQL 脚本。

要将对象另存为脚本

  1. 在选择了要保存到脚本的对象后,右键单击“数据库”,然后单击“另存为脚本”。

    还可以右键单击对象或其父级文件夹,然后单击“另存为脚本”,以编写单个对象或对象类别的脚本。

  2. 在“另存为”对话框中,找到要保存脚本的文件夹,在“文件名”框中输入文件名,然后单击“确定”。SSMA 将追加 .sql 文件扩展名。

修改脚本

将 SQL Server 对象定义保存为一个或多个脚本之后,可以使用 SQL Server Management Studio 查看和修改脚本。

要修改脚本

  1. 在 SQL Server Management Studio 的“文件”菜单上,指向“打开”,再单击“文件”。

  2. 在“打开”对话框中,选择脚本文件,然后单击“确定”。

  3. 使用查询编辑器编辑脚本文件。

    有关查询编辑器的详细信息,请参阅 SQL Server 联机丛书中的“编辑器便利命令和功能”。

  4. 要保存脚本,请在“文件”菜单上单击“保存”。

运行脚本

可以在 SQL Server Management Studio 中运行脚本或单个语句。

要运行脚本

  1. 在 SQL Server Management Studio 的“文件”菜单上,指向“打开”,再单击“文件”。

  2. 在“打开”对话框中,选择脚本文件,然后单击“确定”。

  3. 要运行完整脚本,请按 F5 键。

  4. 要运行一组语句,请在查询编辑器窗口中选择这些语句,然后按 F5 键。

有关如何使用查询编辑器运行脚本的详细信息,请参阅 SQL Server 联机丛书中的“SQL Server Management Studio Transact-SQL 查询”。

还可以使用 sqlcmd 实用工具和 SQL Server 代理从命令行运行脚本。 有关 sqlcmd 的详细信息,请参阅 SQL Server 联机丛书中的“sqlcmd 实用工具”。 有关 SQL Server 代理的更多信息,请参阅 SQL Server 联机丛书中的“自动化管理任务(SQL Server 代理)”。

保护 SQL Server 中的对象

在将转换后的数据库对象加载到 SQL Server 后,便可以授予和拒绝授予对这些对象的权限。 最好是在将数据迁移到 SQL Server 之前执行此操作。 有关如何帮助保护 SQL Server 中的对象的信息,请参阅 SQL Server 联机丛书中的“数据库和数据库应用程序的安全注意事项”。

下一步

迁移过程中的下一步是将数据迁移到 SQL Server

另请参阅

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