保存查询时出现访问错误

时间:2016-07-04 07:12:04

标签: ms-access path

我正在尝试使用以下语句保存Access查询。

INSERT INTO FOO( DES_MOTIVO, DES_TIPO, DES_SUBTIPO, 
                 AGRUPACIÓN, SEMANA, CuentaDeCOD_ACCION_CLIENTE ) 
IN 'C:\Users\BAR\Desktop\03. Hola\DB STATIC INTERACCIONES MES.accdb'

保存查询时出错,说路径不正确。测试路径,我发现罪魁祸首是“03. Hola”中的句号+空格。删除空格可以解决问题,并且可以正确保存查询。

有没有办法逃避这段时间,以便访问接受带有句点+空格的保存路径?

提前谢谢你,

内加。

2 个答案:

答案 0 :(得分:0)

尝试在路径周围添加引号

"INSERT INTO FOO( DES_MOTIVO, DES_TIPO, DES_SUBTIPO, AGRUPACIÓN, SEMANA, CuentaDeCOD_ACCION_CLIENTE ) IN '""C:\Users\BAR\Desktop\03. Hola\DB STATIC INTERACCIONES MES.accdb""'"

但是为什么要像#34; 03一样保留这些奇怪的文件夹名称。 HOLA&#34 ;?

确实在桌面上,您应该能够创建更简单的文件夹名称。

答案 1 :(得分:0)

显然,SQL或VBA代码无法实现这一点。

有趣的事实:您可以通过设置查询属性的Destination database设置在查询设计器中执行此操作。设置您的路径,可以保存和执行查询(并且它可以工作!)。

但是切换到SQL视图并尝试保存:你得到了"无效的包围"错误。尝试从VBA设置SQL时也一样。

帮助文件提到的DestinationDB属性不能通过代码获得。它似乎来自IN子句。

因此,您的数据库必须转移到更好的路径。或者,如果是单个用户,请复制到临时路径,运行INSERT,复制回来。

另请参阅:https://support.microsoft.com/en-us/kb/132184