如何在SQL Server企业管理器中制作表的副本?

时间:2009-07-03 17:02:27

标签: sql-server enterprise-manager

这是“我可能应该知道这一点,但我不知道”的问题之一。如何在Enterprise Manager中制作表的副本?不将数据导出到其他数据库,只需在相同数据库中复制表。此时,我并不关心数据是否附带,但表定义应该是重复的。

如果我在选定的表上执行Ctrl + C并将结果粘贴到文本编辑器中,它会给我一个看起来很有前途的Create Table语句,但我不能在我的生活中找到任何运行该语句的地方

编辑:请注意,我在询问 SQL Server企业管理器。这与“SQL Server Management Studio”不同。左上角和其他任何地方都没有“新查询”按钮。实际上,除了工具菜单之外,“查询”一词不会出现在EM的任何地方,并且它是查询分析器的链接。

6 个答案:

答案 0 :(得分:10)

复制包含所有内容的表格(没有键和约束)

select * into tablecopy from table 

复制没有内容的表(没有键和约束)

select top 0 * into tablecopy from table 

有一种方法可以在所有约束中复制它,在右键菜单中(表格中)然后所有任务然后编写脚本,然后创建新的查询编辑器窗口(或文件)。您必须修改生成的脚本,以便以不同的方式命名约束和键,然后执行

insert into tablecopy select * from table

填充它。

编辑:如果您实际要求的是在企业管理器中运行SQL的位置,请尝试查询分析器或Management Studio。

答案 1 :(得分:9)

SELECT * INTO MyNewTable FROM MyOldTable

新表将在没有主键,外键或其他任何内容的情况下创建

答案 2 :(得分:5)

如果您正在谈论2000企业经理: 工具 - >查询分析器 将为您提供执行查询的位置。

答案 3 :(得分:1)

试试这个:

SELECT *
INTO new_table_name
FROM old_table_name

答案 4 :(得分:1)

使用TSQL ...

SELECT * INTO MyTableCopy FROM MyTable WHERE 1=2

使用EM,右键单击对象>所有任务>生成SQL脚本。

答案 5 :(得分:0)

如果您需要主键等,请右键单击该表,选择“脚本表为”,然后选择“创建到”,然后选择“新窗口”。将表的名称更改为副本的名称并运行脚本。然后,如果您想要数据,可以根据其他答案选择。