中易网

为什么SQL表清空了.数据库占用还是那么大呢?

答案:6  悬赏:50  
解决时间 2021-11-08 12:41
  • 提问者网友:绿海猖狂
  • 2021-11-08 06:59
使用TRUNCATE TABLE清空了很多表.但在我的电脑下面查看MDF文件好象一点点也没有变小.为什么呢?怎么解决?

收缩数据库只能收缩日志.MDF一点也没有变小.
最佳答案
  • 二级知识专家网友:没感情的陌生人
  • 2021-11-08 08:13
那是正常的.因为数据库是建在设备上的,建库时是按你设定的原大小,和增长率自动增长的,数据库设备已划出空间,就算你库中没有内容也是那么大.

这就像一个只有扩大没有缩小的气球,在你向里面放东西时把他挤大了,再拿出来东西时,虽然里面东西减少了,但空间已经挤出来了,回不去了,这时你还可以向里面放东西,占用取出来的东西的位置.如果放不下了,他就又向外挤.
就是这个道理.
全部回答
  • 1楼网友:青灯壁纸妹
  • 2021-11-08 12:05
需要压缩一下数据库
  • 2楼网友:统治我的世界
  • 2021-11-08 11:58
收缩数据库,也就是压缩,这样会比以前小很多。
  • 3楼网友:我叫很个性
  • 2021-11-08 11:38
收缩收据库的数据文件和日志文件!
  • 4楼网友:修女的自白
  • 2021-11-08 10:19
因为你的表是在数据库里存储的,一开始定义数据库有多大,就能存储多大的数据,当然数据都是以表的形式来存储的
  • 5楼网友:夢想黑洞
  • 2021-11-08 09:42
表空间需要在后台作调整,windows下的大多都是自动扩大表空间的,solaris、linux下的需要手工分配表空间,所有的表空间一旦增长了就占用了硬盘资源,不做表空间调整是不会小的。实际上缩小表空间是不可能的了,除非exp导出,重建数据库,再imp导入。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息