2016-11-11 5 views
3

Я ищу способ запросить flatfiles с пользовательскими файловыми расширениями напрямую через SQL.Ошибка при SQL-запросе плоских файлов с пользовательским расширением файла

Обычно используют что-то вроде

SELECT * FROM [Text;DATABASE=C:\Flatfiles].[S7121070_ppis#csv]

, который работает с потрясающим .txt, .csv и .tab.

Однако в моем текущем проекте я работаю с плоскими файлами фиксированной ширины с расширением .ftp7. Когда вы запрашиваете эти файлы в VBA, я сталкиваюсь с Err # -2147217911, заявляя, что объект или база данных заблокированы.

Как ни странно, это происходит только тогда, когда я запрашиваю что-нибудь, что не .txt, .csv или .tab. Значение myfile.ftp7, myfile.ftp, myfile.abc или myfile не может быть запрошен.

Нельзя ли это сделать, или я просто что-то пропустил? Спасибо за вашу помощь! Приветствия, Martin

Дополнительная информация:

  • Я использую или Excel или Access с помощью VBA
  • переименовании .ftp7 на .csv, .txt, .tab решает эту проблему, но это нет- не из-за не только для чтения доступа
  • я могу использовать schema.ini -файлы для описания структуры данных, поэтому я ожидал бы, что фактическое расширение файла является более или менее излишним для интерпретации содержимого файлов
+1

Возможно, вам потребуется отредактировать реестр (https://social.msdn.microsoft.com/Forums/vstudio/en-US/630ed1d9-73f1-4cc0-bc84-04f29cffc13b/what-registry-keys-are-responsible -for-file-extension-association? forum = netfxbcl) в MS Access разрешены только определенные расширения. – Fionnuala

+0

@Fionnuala отличный совет, спасибо! Я не администратор, но я обязательно проверю это дома. –

ответ