是否有一种快速简便的方法可以在SQL-Server中复制表格?我只是想从表A创建一个临时表,因为我需要刷新表B(它会干扰外键)。
我知道手动做这不是一个荒谬的任务,但似乎应该有一个很好的方法来做到这一点。
编辑:为了澄清,我想复制表定义,而不是实际数据。
答案 0 :(得分:6)
试试这个?
SELECT
*
INTO
#temp
FROM
myTable
WHERE
1=0
它不会复制约束,索引等。但它应该复制数据类型和字段名称。
答案 1 :(得分:1)
INSERT INTO TableB
( SELECT * FROM TableA )
答案 2 :(得分:1)
看看SELECT INTO:
SELECT *
INTO new_table_name [IN externaldatabase]
FROM old_tablename
W3Schools:http://www.w3schools.com/sql/sql_select_into.asp
MSDN:http://msdn.microsoft.com/en-us/library/aa213050%28v=sql.80%29.aspx
SELECT INTO可用于将来自多个表或视图的数据组合到一个表中。它还可用于创建包含从链接服务器中选择的数据的新表。
答案 3 :(得分:1)
在进行刷新时,暂时禁用约束不是更好的方法
ALTER TABLE X NOCHECK CONSTRAINT ALL
-- Refresh SQL
ALTER TABLE X CHECK CONSTRAINT ALL
答案 4 :(得分:0)
从sourceTable
中选择*进入copyTable