由于磁盘空间/内存错误而更改表中的数据类型

时间:2017-01-27 18:26:54

标签: sql database ms-access

尝试更改Access中的数据类型时由于错误而失败:

  

“没有足够的磁盘空间或内存”。表中存在超过385,325条记录。

尝试以下链接以及其他StackOverFlow线程失败: Can't change data type on MS Access 2007 Microsoft Access can't change the datatype. There isn't enough disk space or memory

目的是将一列的数据类型从“Text”更改为“Number”。由于大小或所需的数据类型字段,上述链接无法容纳该链接。

由于记录数量的原因,可能无法打破表格。

对此的帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

我无法确定MS Access,但对于MS SQL,可以通过在表的最右端添加允许空值的新列来避免表重建(需要大量时间和空间),更新使用常规更新查询和AFAIK的列甚至删除旧列并重命名新列。所以最后只是该列的位置发生了变化。

至于你的385,325条记录(我希望这个数字是正确的)即使表格有1000列,其中每行有500个unicode字符,我们最终会得到大约385,325*1000*500*2 ~ 385 GB个数据。那现在应该不是最大可用的 - 所以:

  • 如果是你正在耗尽的磁盘空间,如何将数据移动到其他计算机,更改数据库并将其移回。
  • 如果数据库似乎已损坏(并且标准工具没有帮助(制作副本)),则很可能有助于使用表创建创建新表或数据库(更好:创建手动和追加查询。