SQL Server копирует все строки из одной таблицы в другую дублирующую таблицу

Я хочу сохранить таблицу как историю и заменить ее пустой. Как это сделать через Management Studio?

Ответы

Ответ 1

Дублируйте таблицу в таблицу для архивирования:

SELECT * INTO ArchiveTable FROM MyTable

Удалить все записи в таблице:

DELETE * FROM MyTable

Ответ 2

select * into x_history from your_table_here;
truncate table your_table_here;

Ответ 3

У меня нет сервера sql для тестирования, но я думаю, что это просто:

insert into newtable select * from oldtable;

Ответ 4

Либо вы можете использовать RAW SQL:

INSERT INTO DEST_TABLE (Field1, Field2) 
SELECT Source_Field1, Source_Field2 
FROM SOURCE_TABLE

Или используйте мастер:

  • Щелкните правой кнопкой мыши по базе данных → Задачи - > Экспорт данных
  • Выберите исходную/целевую базу данных
  • Выберите исходную/целевую таблицу и Поля
  • Скопировать данные

Затем выполните:

TRUNCATE TABLE SOURCE_TABLE

Ответ 5

попробуйте выполнить эту одиночную команду для удаления и вставки данных:

DELETE MyTable
    OUTPUT DELETED.Col1, DELETED.COl2,...
        INTO MyBackupTable

рабочий образец:

--set up the tables
DECLARE @MyTable table (col1 int, col2 varchar(5))
DECLARE @MyBackupTable table (col1 int, col2 varchar(5))
INSERT INTO @MyTable VALUES (1,'A')
INSERT INTO @MyTable VALUES (2,'B')
INSERT INTO @MyTable VALUES (3,'C')
INSERT INTO @MyTable VALUES (4,'D')

--single command that does the delete and inserts
DELETE @MyTable
    OUTPUT DELETED.Col1, DELETED.COl2
        INTO @MyBackupTable

--show both tables final values
select * from @MyTable
select * from @MyBackupTable

ВЫВОД:

(1 row(s) affected)

(1 row(s) affected)

(1 row(s) affected)

(1 row(s) affected)

(4 row(s) affected)
col1        col2
----------- -----

(0 row(s) affected)

col1        col2
----------- -----
1           A
2           B
3           C
4           D

(4 row(s) affected)

Ответ 6

Это будет работать:

select * into DestinationDatabase.dbo.[TableName1] from (
Select * from sourceDatabase.dbo.[TableName1])Temp