关于数据库文件虚大的问题
由于客户哪里积累了十几年的数据,需要对数据库进行备份,将前几年的数据备份出来,并删除这些数据。所有的数据备份做完之后,数据量基本上减少了一半,但是数据库只减少了六分之一,数据文件已经收缩过,日志也已经清空。但是在我新建了一个数据库,将所有数据库导过去之后,发现其实数据才500多M。 
 下面上几个业务表的结构: 
 //这个是个主表 
 CREATE   TABLE   [BO_Deliver]   ( 
 	[OID]      uniqueidentifier   ROWGUIDCOL      NOT   NULL   CONSTRAINT   [DF_BO_Deliver_OID]   DEFAULT   (newid()), 
 	[DeliverNo]   [varchar]   (8)   COLLATE   Chinese_PRC_CI_AS   NOT   NULL   , 
 	[TwoNo]   [varchar]   (2)   COLLATE   Chinese_PRC_CI_AS   NOT   NULL   , 
 	[CustomerNo]   [varchar]   (8)   COLLATE   Chinese_PRC_CI_AS   NULL   , 
 	[DeliverDate]   [datetime]   NULL   , 
 	[DeliverAddress]   [varchar]   (50)   COLLATE   Chinese_PRC_CI_AS   NULL   , 
 	[TransportCompany]   [varchar]   (8)   COLLATE   Chinese_PRC_CI_AS   NULL   , 
 	[TruckNo]   [varchar]   (6)   COLLATE   Chinese_PRC_CI_AS   NULL   , 
 	[KB]   [int]   NULL   , 
 	[BackKB]   [int]   NULL   , 
 	[KBSource]   [varchar]   (12)   COLLATE   Chinese_PRC_CI_AS   NULL   , 
 	[TransFactSign]   [varchar]   (2)   COLLATE   Chinese_PRC_CI_AS   NULL   , 
 	[AllWeight]   [int]   NULL   , 
 	[EditDate]   [datetime]   NULL   , 
 	[Remark]   [varchar]   (20)   COLLATE   Chinese_PRC_CI_AS   NULL   , 
 	[CreateDate]   [datetime]   NOT   NULL   , 
 	[ModifyDate]   [datetime]   NOT   NULL   , 
 	CONSTRAINT   [PK_BO_Deliver]   PRIMARY   KEY      CLUSTERED    
 	( 
 		[OID] 
 	)      ON   [PRIMARY]    
 )   ON   [PRIMARY] 
 GO 
 //下面这个是明细表   
 CREATE   TABLE   [BO_DeliverItems]   ( 
 	[OID]      uniqueidentifier   ROWGUIDCOL      NOT   NULL   CONSTRAINT   [DF_BO_DeliverItems_OID]   DEFAULT   (newid()), 
 	[ParentOID]   [TOID]   NOT   NULL   , 
 	[DeliverItemsNo]   [varchar]   (1)   COLLATE   Chinese_PRC_CI_AS   NOT   NULL   , 
 	[OrderNo]   [varchar]   (8)   COLLATE   Chinese_PRC_CI_AS   NULL   , 
 	[OrderItemsNo]   [varchar]   (1)   COLLATE   Chinese_PRC_CI_AS   NULL   , 
 	[CustomerOrderNo]   [varchar]   (20)   COLLATE   Chinese_PRC_CI_AS   NULL   , 
 	[OrderDate]   [datetime]   NULL   , 
 	[Sort]   [varchar]   (4)   COLLATE   Chinese_PRC_CI_AS   NULL   , 
 	[Type]   [varchar]   (14)   COLLATE   Chinese_PRC_CI_AS   NULL   , 
 	[Class]   [varchar]   (1)   COLLATE   Chinese_PRC_CI_AS   NULL   , 
 	[Thickness]   [int]   NULL   , 
 	[TheSize]   [varchar]   (21)   COLLATE   Chinese_PRC_CI_AS   NULL   , 
 	[ProduceArea]   [varchar]   (12)   COLLATE   Chinese_PRC_CI_AS   NULL   , 
 	[Piece]   [int]   NULL   , 
 	[PieceUnit]   [varchar]   (2)   COLLATE   Chinese_PRC_CI_AS   NULL   , 
 	[DeliverWeight]   [int]   NULL   , 
 	[AdjustWeight]   [int]   NULL   CONSTRAINT   [DF_BO_DeliverItems_AdjustWeight]   DEFAULT   (0), 
 	[OweWeight]   [int]   NULL   , 
 	[OweCue]   [varchar]   (4)   COLLATE   Chinese_PRC_CI_