Frode Lillerud Asked: 2009-05-02 07:18:56 +0800 CST2009-05-02 07:18:56 +0800 CST 2009-05-02 07:18:56 +0800 CST 找出一个 SQL 表使用了多少磁盘空间? 772 有没有办法找出 MSSQL 中的一个表使用了多少磁盘空间?或者更好的是,单行消耗多少磁盘空间? sql-server 5 个回答 Voted Best Answer Chris Shaffer 2009-05-02T07:23:43+08:002009-05-02T07:23:43+08:00 在 SQL Server Management Studio 中,右键单击数据库并选择 Reports|"Disk Usage By Tables"。 另外,我不知道它是在哪个版本的 SQL Server 中引入的,但是有一个 sproc sp_spaceused 可以传递一个对象;例如: sp_spaceused 'MyTable' ConcernedOfTunbridgeWells 2009-05-02T07:26:19+08:002009-05-02T07:26:19+08:00 对于一个表,您可以使用它sp_spaceused来确定表的大小。但是,任何具有可变长度列的模式(例如 varchar/varbinary 类型)都没有固定的行大小。鉴于这描述了大多数(如果不是全部)真实数据库,您实际上只会对平均行大小感兴趣,该平均行大小可以通过将大小除以行数来简单计算。 Ryaner 2009-05-02T07:21:23+08:002009-05-02T07:21:23+08:00 在管理工作室中,您可以右键单击数据库并转到属性。它将有一个 size 字段,告诉您当前数据库的大小。 Portman 2009-05-02T07:22:07+08:002009-05-02T07:22:07+08:00 在 SQL Server Management Studio 中,右键单击表,选择“属性”并移动到“存储”页面。 Blorgbeard 2009-08-20T13:26:12+08:002009-08-20T13:26:12+08:00 有点相关 - 这个脚本可能很有用:Finding the maximum tables in a database
在 SQL Server Management Studio 中,右键单击数据库并选择 Reports|"Disk Usage By Tables"。
另外,我不知道它是在哪个版本的 SQL Server 中引入的,但是有一个 sproc sp_spaceused 可以传递一个对象;例如:
对于一个表,您可以使用它
sp_spaceused
来确定表的大小。但是,任何具有可变长度列的模式(例如 varchar/varbinary 类型)都没有固定的行大小。鉴于这描述了大多数(如果不是全部)真实数据库,您实际上只会对平均行大小感兴趣,该平均行大小可以通过将大小除以行数来简单计算。在管理工作室中,您可以右键单击数据库并转到属性。它将有一个 size 字段,告诉您当前数据库的大小。
在 SQL Server Management Studio 中,右键单击表,选择“属性”并移动到“存储”页面。
有点相关 - 这个脚本可能很有用:Finding the maximum tables in a database