小编Pat*_*eVB的帖子

为什么 SQL Server 表在添加 55MB 数据后需要多占用 1GB?

我发现一个客户数据库的大小在昨天和今天之间激增。经过调查,我在表模式中发现了一个设计问题,但在进行了一些数学运算后,我知道已将 55MB 的数据添加到表中,但表大小现在为 1GB,而表的原始大小为 70MB。

有关其他信息,通过添加 2000 多行且varchar(max)字段填充数据来添加 55MB数据。

这是之前/之后的分析:

昨天 昨天

今天 今天

你能向我解释一下为什么一个表需要 70MB 现在在添加 55MB 数据后需要 1GB 吗?

上没有任何索引 varchar(max)

可用空间非常低,与自增长无关。并且自动增长不是用百分比配置的,而是用固定的增长大小配置的。

这是表的创建脚本:

USE [DuoClient20140003]
GO

/****** Object:  Table [dbo].[tContactHistory]    Script Date: 23/05/2016 10:53:19 ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

SET ANSI_PADDING ON
GO

CREATE TABLE [dbo].[tContactHistory](
    [KeyCH] [int] IDENTITY(1,1) NOT NULL,
    [DateCH] [datetime] NULL,
    [KeyType] [int] NULL,
    [KeyF] [int] NULL,
    [KeyI] [int] NULL,
    [KeyCA] [int] NULL,
    [Content] [varchar](max) NULL,
    [KeyCom] [int] NULL,
    [KeyMH] [bigint] …
Run Code Online (Sandbox Code Playgroud)

sql-server

5
推荐指数
1
解决办法
212
查看次数

标签 统计

sql-server ×1