#sql #ms-access #directory #path
#sql #ms-access #каталог #путь
Вопрос:
Я пытаюсь запустить запрос Microsoft Access, используя этот SQL
SELECT * FROM tblMyClients IN 'C:DataClientsFood Pantry Ver 2DBFoodPantryRemoteDB.accdb';
Я получаю сообщение об ошибке «Не удалось найти файл …»
Если я удалю пробелы в имени папки, запрос будет работать нормально. Но удаление пробелов не вариант.
Какой синтаксис я могу использовать, чтобы заставить это работать?
Спасибо
Ответ №1:
Ваш синтаксис правильный, поэтому либо файл не существует, либо вы можете попробовать использовать двойные кавычки:
SELECT * FROM tblMyClients IN "C:DataClientsFood Pantry Ver 2DBFoodPantryRemoteDB.accdb";
Комментарии:
1. Спасибо за быстрый ответ. Файл действительно существует. Если я удалю пробелы, он отлично работает на моем компьютере, но с пробелами в имени папки Access не может найти файл из-за пробелов. Я пробовал двойные кавычки, я пробовал комбинации из нескольких двойных кавычек и одинарных кавычек. Удаление пробелов на компьютере клиента не является вариантом.
2. Это странно. Ваш код работает безупречно здесь с именем файла через пробел. Вы уверены, что пробелы — это настоящие пробелы, а не какой-то пробел? В противном случае попробуйте связать таблицу (
DoCmd.TransferDatabase acLink ... etc.
); затем вы можете назвать связанную таблицу по своему усмотрению.3. Спасибо, Густав. Да, вы правы, это действительно работает. По какой-то причине он не работает на диске D: . У меня была эта проблема раньше с Access, он видит D: drive в качестве аргумента. Еще раз спасибо.