关于数据库文件虚大的问题
由于客户哪里积累了十几年的数据,需要对数据库进行备份,将前几年的数据备份出来,并删除这些数据。所有的数据备份做完之后,数据量基本上减少了一半,但是数据库只减少了六分之一,数据文件已经收缩过,日志也已经清空。但是在我新建了一个数据库,将所有数据库导过去之后,发现其实数据才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_