有些情况下需要对某些表进行备份以提高查询的效率。
可以利用
insert into HistoryData select t1.* from Datatable as t1 left join HistoryData as t2 on t1.主键=t2.主键
进行数据的插入
但是如果表中存在自动增长的列的话就会出现
“仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表'TableName'中的标识列指定显式值"
解决的大概办法有两种:
一、把所要插入的列名都写出来
insert into Table (列1,列2 ,列3....) select (列1,列2,列3) from Table_bak
二、在不影响表的操作下删除自动增长的列。(如果历史数据存储表就可以直接删除了)
遇到了下面的问题
通过在工具->选项->Designers->取消勾选阻止保存要求重新创建表的更改