小编Der*_*nch的帖子

SQL Server 数据库没有缩小

我有一个有很多未使用空间的 SQL 数据库。但是,当我运行 Tasks | 收缩| 数据库和任务 | 收缩| 来自管理工作室的文件它没有释放任何空间。
不幸的是,运行它的机器的硬盘空间不足。关于为什么这个空间没有释放的任何想法。

DB 上的恢复模式也设置为简单。 在此处输入图片说明

这是我缩小文件时出现的未使用对话框: 在此处输入图片说明

我也试过通过 T-SQL 做到这一点

DBCC SHRINKDATABASE (myDatabase, 5);

我得到以下回应:

DBCC SHRINKDATABASE:数据库 ID 6 的文件 ID 1 被跳过,因为该文件没有足够的可用空间来回收。DBCC SHRINKDATABASE:数据库 ID 6 的文件 ID 2 被跳过,因为该文件没有足够的可用空间来回收。DBCC 执行完成。如果 DBCC 打印错误消息,请联系您的系统管理员。

sql-server shrink

19
推荐指数
4
解决办法
10万
查看次数

释放未使用的空间 SQL Server 表

我在 SQL Server 2012 Express 中有一个表,有很多未使用的空间。

我需要释放数据库中的空间。

| 姓名 | 行 | 保留 | 数据 | INDEX_SIZE | 未使用 |
|-------------|--------|--------------|----------- ---|------------|--------------|
| 我的表名 | 158890 | 8928296 KB | 5760944 KB | 2248 KB | 3165104 KB |

如何让 SQL 释放 3165104KB?

我已经试过了:

Alter table MyTableName Rebuild
DBCC CLEANTABLE (MyDbName,"MyTableName ", 0)
ALTER INDEX ALL ON MyTableName REORGANIZE ; 
ALTER INDEX PK_Image ON MyTableName REBUILD WITH (ONLINE = OFF) 
Run Code Online (Sandbox Code Playgroud)

这是表:

CREATE TABLE [dbo].[MyTableName](
    [ImageID] [int] IDENTITY(1,1) NOT NULL,
    [DateScan] …
Run Code Online (Sandbox Code Playgroud)

sql-server sql-server-2012

11
推荐指数
2
解决办法
3万
查看次数

标签 统计

sql-server ×2

shrink ×1

sql-server-2012 ×1