如何:将数据库对象移动到另一个架构

在**“架构视图”**中使用数据库重构,可以将数据库对象从一个架构移动到另一个架构。 然后,可以先预览所做的更改,再将更改应用于数据库项目。 在此之后,必须部署更改以更新目标数据库。 重构日志将记录所有重构操作,这有助于在部署更改时保留您的意图。 有关更多信息,请参见将数据库对象移至另一个架构

将数据库对象移动到另一个架构

  1. 在**“架构视图”中,右击要移动的对象,指向“重构”,然后单击“移至架构”**。

    即会出现**“移至架构”**对话框。

    提示

    不能从代码窗口或“解决方案资源管理器”重构对象。

  2. 在**“新建架构”**列表中,单击要将对象移动到其中的架构的名称。

  3. (可选)选中**“预览更改”**复选框。

    提示

    若要更新单元测试和脚本中的引用,您必须选中此复选框。 “预览更改”对话框出现时,必须指定要更新这些引用。 有关更多信息,请参见如何:预览重构更改

  4. (可选)选中**“为非限定脚本和单元测试引用采用默认项目架构 dbo”**复选框。

    如果未选中此复选框,也未在脚本和单元测试中指定完全限定名称,则无法使用重构更新这些引用。 如果选中该复选框但未在脚本和单元测试中指定完全限定名称,则将假定这些对象的默认架构与项目的默认架构相同。

  5. (可选)选中**“更新包含警告或错误的架构对象中的引用”**复选框。

    如果清除此复选框,则不更新对象中其定义会导致警告或错误的引用。 如果选中该复选框,则无论引用所在的对象定义是否导致警告或错误,都会更新引用。

  6. 单击**“确定”**。

    如果选中**“预览更改”复选框,则将出现“预览更改”对话框。 否则,将更新对象名称,并且对象会在“架构视图”**中出现在新位置。

    提示

    如果将对象移动至另一个架构,则不会更改在其中定义对象的文件的名称。 如果要更新文件名,则必须在“解决方案资源管理器”中重命名文件。

    除了步骤 6 中提到的可选日志文件之外,只要您将数据库对象移动至另一个架构,就会在“项目名称.refactorlog”文件中写入条目。 此文件是数据库项目的一部分,在部署数据库项目时使用。 必须将此文件签入版本控制,并像管理任何其他共享项目资产一样管理该文件。 有关更多信息,请参见将数据库对象移至另一个架构

请参见

任务

如何:部署数据库重构更改

概念

将数据库对象移至另一个架构

完全限定数据库对象的名称

扩展 SELECT 语句中的通配符

重命名对服务器或数据库的引用

重命名对数据库对象的所有引用