如何:将列从一个表复制到另一个表
可以将列从一个表复制到另一个表,方法是仅复制列定义,或者复制定义和数据。
备注
为 SQL Server 2012 格式的数据库提供了一个新版本的表设计器。本主题介绍表设计器的旧版本,可将其与 SQL Server 早期格式的数据库配合使用。
在新版本中,可通过图形界面或直接在脚本窗格中更改表定义。如果使用图形界面,表定义将在脚本窗格中自动更新。若要在脚本窗格中应用 SQL 代码,请选择“更新”按钮。有关新版本的更多信息,请参见如何使用表设计器创建数据库对象。
备注
对于在以下说明中使用的某些 Visual Studio 用户界面元素,您的计算机可能会显示不同的名称或位置。这些元素取决于您所使用的 Visual Studio 版本和您所使用的设置。有关更多信息,请参见 Visual Studio 设置。
将列定义从一个表复制到另一个表中
打开包含要复制的列的表以及要复制到的表。
单击包含要复制的列的表的选项卡,并选择这些列。
从**“编辑”菜单中单击“复制”**。
单击要将列复制到其中的表的选项卡。
选择要排在插入列之后的列,然后从**“编辑”菜单中单击“粘贴”**。
将具有别名数据类型的数据库列从一个数据库复制到另一个数据库时,用户定义的数据类型在目标数据库中的可能不可用。 在这种情况下,将为该列分配该数据库中可用的最匹配基数据类型。 有关别名数据类型的更多信息,请参见 Microsoft 网站。
将数据从一个表复制到另一个表中
按照以上关于复制列定义的说明执行操作。
备注
在开始将数据从一个表复制到另一个表之前,确保目标列中的数据类型与源列的数据类型兼容。
在服务器资源管理器中右击**“表”节点,再单击“新建查询”**。
从**“查询设计器”菜单中指向“更改类型”,再单击“插入结果”**。
在**“选择插入结果的目标表”对话框中选择要将数据复制到的表,再单击“确定”**。
如果要在同一个表内复制行,则可将源表作为目标表添加。
备注
查询设计器无法事先确定可以更新哪些表和视图。因此,“选择插入结果的目标表”对话框中的表列表将显示正在查询的数据连接中的所有可用表和视图,甚至显示不能将行复制到其中的表和视图。
右击关系图窗格的主题,再从快捷菜单中单击**“将表添加到关系图”**。
在**“添加表”对话框中选择要从中复制数据的每个表,单击“添加”,再单击“关闭”**。
这些表以缩略形式显示在关系图窗格中。
在缩略表中,选中要从中复制数据的所有列的复选框。
在“条件”窗格的**“追加”**列中,为每个目标列选择要从其中复制数据的列。
通过在“条件”窗格中输入搜索条件来指定要复制的行。 有关详细信息,请参见 如何:指定搜索条件。
如果未指定搜索条件,则将源表中的所有行都复制到目标表中。
如果要复制汇总信息,请指定**“分组依据”**选项。 有关详细信息,请参见 如何:对表中所有行的值进行汇总或聚合。
单击**“执行 SQL”**按钮以运行该查询。
当执行“插入结果”查询时,“结果”窗格中不报告结果。 但是,会出现一条消息,指出已复制的行数。
将具有别名数据类型的数据库列从一个数据库复制到另一个数据库时,用户定义的数据类型在目标数据库中的可能不可用。 在这种情况下,将为该列分配该数据库中可用的最匹配基数据类型。 有关别名数据类型的更多信息,请参见 Microsoft 网站。