Как скопировать таблицу в MS SQL ?
Довольно долго рыскал в Enterprise Manager в поисках способа копирования таблицы с полным содержимым и структурой - найти так и не смог. Оказалось, что с этой задачей прекрасно справляется простейший запрос:
SELECT * INTO table_copy FROM original
table_copy создается автоматически при выполнении запроса. Указав условие WHERE мы можем скопировать часть таблицы, которая удовлетворяет нашим требованиям.
Если данные копировать не нужно, то придется выполнить 2 запроса
SELECT TOP 1 * INTO table_copy FROM original
TRUNCATE TABLE table_copy
Корируем всего лишь одну запись, для того чтобы было проще удалять и не занимать дополнительного дискового пространства. В принципе, можно было бы сделать финт ушами
SELECT * INTO table_copy FROM original WHERE 1=2
Только в этом случае не будут скопированы индексы. Так что первый способ надежнее, хотя и несколько длиннее в написании