存储50幅图片,数据库文件撑到了1Gbytes,而整个图片文件夹的图片大小只有100Mbytes.
dbcc来shrink数据库也没有用,log文件从40M减小到1M,而MDF文件而是1G,没有任何的变化,但是在导入数据库前,这个数据库还只有150M, 
 后来将这此图片压缩,整个图片文件夹的大小减小到了2M,但是导入到数据库后的MDF达到了400M,难道这当中的250M全部用来存放了这2M的图片吗?   
 如果我的图片达到了1000,甚至100000,那数据库不就达到几T啦?? 
 这还了得??
------解决方案---------------------- 获得所有表的表记录,和使用空间的SQL 
 declare @command1 varchar(8000),@postcommand varchar(8000)   
 exec sp_MSForEachTable  
 @precommand=N ' 
 create table ##( 
 id int identity, 
 表名 sysname, 
 字段数 int, 
 记录数 int, 
 保留空间 Nvarchar(10), 
 使用空间 varchar(10), 
 索引使用空间 varchar(10), 
 未用空间 varchar(10)) ', 
 @command1=N 'insert ##(表名,记录数,保留空间,使用空间,索引使用空间,未用空间) exec sp_spaceused  ' '? ' ' 
     update ## set 字段数=(select count(*) from syscolumns where id=object_id( ' '? ' ')) where id=scope_identity() ', 
 @postcommand=N 'select * from ## order by 使用空间 desc drop table ## ' 
 exec(@command1) 
 exec(@postcommand)   
 使用这个看看是那个表最大,不一定就是你的保存图片的表占用了大量的空间,也有可能是临时表哦.