Проблема с подключением к базе данных MS Access 2016 имеет пароль

Когда я пытаюсь подключиться к базе данных MS Access 2016, он отлично подключается без пароля, но когда я пытаюсь подключиться к той же базе данных после ее шифрования с помощью пароля, я получаю эту ошибку:

Cannot open the database. It may not be a database that your application recognizes, or the file may be corrupt.

вот мой код:

ConnString = "Provider=Microsoft.ACE.OLEDB.12.0;
              Data Source=|DataDirectory|\SCLogin.accdb;Jet OLEDB:Database Password=123"

Ваша строка подключения работает, значит, проблема в другом. Файл заблокирован другим процессом? Файл вообще есть? Это действующая база данных?

LarsTech 06.03.2019 16:18

Итак, вы добавили часть Jet OLEDB, и она не работает? Не уверен, но разве это не должно быть ACE OLEDB:, чтобы соответствовать провайдеру?

Charles May 06.03.2019 17:45

@CharlesMay Доступ к строкам подключения

LarsTech 06.03.2019 17:53

Я уже использовал, но нет успешного результата

Hamdi 07.03.2019 11:20
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
5
564
2

Ответы 2

в доступе; попробуйте варианты и выберите более ранний метод шифрования, например метод шифрования 2007 года. Новые методы шифрования могут не работать с провайдером. Это может называться «Использовать устаревшее шифрование».

Привет, Крис, я внес изменения, но все еще сталкиваюсь с той же проблемой :) у тебя есть другая идея? Спасибо

Hamdi 07.03.2019 10:33

Единственная другая вещь, о которой я могу думать, это некоторые сообщения о проблемах с паролями длиннее 14 символов. Кроме того, некоторые персонажи могут вызвать проблемы. Если у вас возникли проблемы, попробуйте изменить пароль на короткий с обычными символами. Я знаю, что в вашем примере пароль «123», но, может быть, вы используете более сложный пароль в своем производстве?

Chris 07.03.2019 18:21

Я подумал, что решение, предложенное Крисом, сработает. Хммм... попробуй C&R. Это часто устраняет странные проблемы с Access.

Строка подключения должна выглядеть так:

Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\myFolder\myAccessFile.accdb;
Jet OLEDB:Database Password=MyDbPassword;

https://www.connectionstrings.com/ace-oledb-12-0/

Другие вопросы по теме