解决SQL Server导入数据时id自增属性丢失
来源:岁月联盟
时间:2007-09-13
问:“解决SQL Server导入数据时id自增属性丢失”
答:“利用查询分析器和SQL语句可以很好的解决这一问题。”
首先利用查询分析器连接上刚被导入数据的远程数据库,然后执行如下的SQL语句就可以修改指定的数据库表了(这里假设fromo为指定数据库表):
ALTER TABLE from DROP COLUMN id ALTER TABLE from ADD id int IDENTITY(1,1) |
上面第一个SQL语句用来删掉丢失了自增属性的id列,第二个SQL语句用来增加一个新的id列,并设置其为从1开始以1为步长自增。
因为使用时间长了,日志会膨胀得很夸张,所以可以执行以下sql语句,非常安全。
DUMP TRANSACTION 你的数据库名 WITH NO_LOG 清空日志 BACKUP LOG 你的数据库名 WITH NO_LOG 截断事务日志 DBCC SHRINKDATABASE(你的数据库名)收缩数据库文件 EXEC sp_dboption ´你的数据库名´, ´autoshrink´, ´TRUE´ 自动收缩 |
在创建数据库时最好改写日志增长不按照百分比,而是按照每次增加多大空间去做。否则,最后会让日志很大。