mic*_*knt 2 sql sql-server database-design sql-server-2008
我正在构建一个包含大约30个表的数据库:
我一直在测试一些数据并再次删除.我没有删除所有数据,所以everey表是空的.但是,如果我查看Management Studio中数据库的属性,则大小为221,38 MB!
怎么回事?请帮助,我收到我的托管公司的通知,我超出了我的极限.
最好的祝福, :-)
我建议您首先查看数据库的恢复模式.默认情况下,恢复模式为FULL.这将使用您执行的所有事务填充日志文件,在执行备份之前永远不会删除它们.
要更改恢复模式,请右键单击数据库,然后选择"属性".在属性列表中,选择"选项"(位于右侧窗格中).然后将"恢复模型"更改为"简单".
您可能还想缩小文件.为此,右键单击数据库并选择"任务" - >"收缩" - >"文件".您可以通过更改中间的"文件类型"选项来收缩数据文件和日志文件.
马丁的评论非常有趣.即使日志文件处于自动截断模式,您仍然会记录删除的问题.如果您创建了大型表,则在截断文件之前,日志文件仍将展开并且空间不会恢复.你可以通过使用TRUNCATE鼠标来解决这个问题DELETE:
truncate table <table>
Run Code Online (Sandbox Code Playgroud)
不会记录每个被删除的记录(http://msdn.microsoft.com/en-us/library/ms177570.aspx).
delete * from table
Run Code Online (Sandbox Code Playgroud)
记录每条记录.