我有一个我继承的Access数据库,并且今天正在对查询进行更改以尝试引入一些新数据。我搞砸了设计更改并拉入一张如此大的表格,打开查询现在给我一个错误3813.文字如下:
无法完成查询。查询结果的大小大于数据库的最大大小(2 GB),或者磁盘上没有足够的临时存储空间来存储查询结果。
我显然想修复此查询,但尝试在设计视图中打开它会使数据库无法响应,然后出现相同的错误。
有没有办法可以在SQL或Design视图中强制打开它来修复它?看起来很奇怪,这是不可能的。
答案 0 :(得分:1)
重命名查询中使用的其中一个表/查询,它将强制Access在SQL模式下打开它后出现错误消息。直接重命名可能无济于事,因为Access更新相关查询中的对象名称,所以最好的方法 - 创建副本,然后删除原始表/查询。
要将Access对象卸载到文本,您可以使用SaveAsText
:
Application.SaveAsText acQuery, "MyQyeryName", "C:\TEMP\query.txt"
答案 1 :(得分:1)
您可以运行一些VBA将您的破解查询的SQL发送到即时窗口,然后将其复制到新查询并基本上重新开始:
Dim qDef As DAO.QueryDef
Set qDef = CurrentDb.QueryDefs("myBrokenQueryName")
Debug.Print qDef.SQL