Ядро субд microsoft access более не может открыть файл
Я покажу несколько вариантов решения этой проблемы. Но в начале кратко о возникающей проблеме.
Я использовал следующий вариант подключения к базе nookery.accdb
var conn = new OleDbConnection ( @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\SQL\nookery.accdb" ) ;Вам необходимо создать пустой проект и запустить следующий метод:
Далее вам необходимо вызвать данным метод и проанализировать информацию.
И изменить целевую платформу в сборке на x86, а потом на x64. Посмотрев в информации под какую сборку у вас будет доступен поставщик.
Покажу на примере первоначально у меня целевая сборка была под Any CPU метод показал следующую информацию :
Посмотрев на информацию мы не обнаруживаем в ней Microsoft.ACE.OLEDB.12.0. Меняем целевую сборку на x86
Как видим результат остался неизменным, переключаемся на x64
Как мы видим появился доступный нам поставщик Microsoft.ACE.OLEDB.12.0 Для этого всего лишь требовалось сменить целевую платформу.
Необходимо так же добавить или установить в диспетчере конфигурации как показано ниже x64
Если выбора x64 нет, в этом окне так же выберите пункт добавить и соответственно добавьте выбор x64.
Так же необходимо поменять в проекте на x64
Вторым решением будет скачать 2007 Office System Driver ссылка
11 комментариев
а то нихрена не понятно, какой проект, где писать метод, по идее должен быть создан класс раз проект пустой об этом ни слова не сказано! кроме того, так ничего не заработает, так как нет точки входа. так что видео в студию!
Пустой проект подразумевает создания main метода а соответственно точки входа. Вам достаточно добавить метод с сайта и вызвать его, можно просто скопировать, содержимое метода в метод main и запустить проект. Я вроде как доступно разъяснил на сайте, достаточно вызвать метод представленный на сайте, метод как то можно вызвать иначе без main?
Автору огромная благодарность! Полдня копал как подключить файл ACCDB к Вьюжал студии и наконец понял, где собака порылась 🙂
Провайдер Microsoft.ACE.OLEDB.12.0 доступен в 64битном варианте, а Студия она ж 32х-битная до сих пор. Хочется в дизайн-тайм получить доступ, для этого похоже придётся поставтиь 32хбитный офис. Пичалька. Но автору всё равно спасибо!
Пожалуйста. Рад был помочь!
Спасибо, помогло 🙂
Хотелось из ВижуалСтудии подцепиться к файлу базы данных. Однако, 64-битная винда в паре с 64-битным офиосом показывали фигу. Сделал как автор велел, глянул и поменял офис на 32-битный. Всё заработало! Автору респект.
Читайте также: