SQL SERVER 2000里有两表 A,B,表结构是一样的,按些结构我生成C表,再通过“导入数据”把A,B表导入C。
A.B表绝对不会有重复数据。问:1、没生成C表时,数据库大小为337.6MB,生成C表后,我再把A,B表删掉后发现,数据库大小为671.2MB,为什么不是337.6?我做...
A.B表绝对不会有重复数据。
问:1、没生成C表时,数据库大小为337.6MB,生成C表后,我再把A,B表删掉后发现,数据库大小为671.2MB,为什么不是337.6?
我做了数据收缩,结果还是一样! 展开
问:1、没生成C表时,数据库大小为337.6MB,生成C表后,我再把A,B表删掉后发现,数据库大小为671.2MB,为什么不是337.6?
我做了数据收缩,结果还是一样! 展开
1个回答
展开全部
很有可能你用的数据库,不具备将删除后所留出的空间进行清理功能,而你用的数据库的数据收缩只是对C表这个数据进行整理压缩。就是说你用的数据库在删掉A,B表,并作数据收缩,是不能减少数据库的大小的。就像Email的例子一样,不知你观察过没有,你删掉需要的email后,你的eamil的总的大小不会减少。如果你想精确的减少的话,你需要把你的数据库里(假设名为A)的你实际要用的数据全部导出到(最好是命名一个新的)Access的数据库,然后删除A数据库,在重新建立A数据库,然后将导出的所有数据重新导入新建的A数据库里。不过这样麻烦的事,还是很少有人做的。除非数据库的容量不够了,需要整理。一般都不会在意的,因为你整理后的数据库在以后的使用中,删除表或表里的数据时还是有这个现象,只能增大,不会因为你的删除一条或一个表数据而缩小的。
追问
现在问题以得到正确解决。(原来是我收缩数据库时操作错误)
.收缩数据库文件(如果不压缩,数据库的文件不会减小
企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件
--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了
--选择数据文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询