powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / ошибочный пароль (Access 2010)
8 сообщений из 8, страница 1 из 1
ошибочный пароль (Access 2010)
    #38035961
andrber
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!
Подскажите, где ошибка?
Имеется:
ОС WXP SP3
MS Office 2010
БД на ACCESS 2010 на сетевом ресурсе подмапленном в качестве диска Q: (доступ на создание/изменение/удаление на уровне ФС - есть)
БД зашифрована паролем: "123" (без кавычек). С этим паролем через интерфейс ACCESS успешно открывается.
Из файла EXCEL кодом на VBA пытаюсь подключиться к БД:
Код: vbnet
1.
2.
3.
4.
5.
Private Sub ConnOpen()
    Set dbconn = CreateObject("ADODB.Connection")
    dbconn.connectionstring = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Q:\db.accdb;Jet OLEDB:Database Password=123;"
    dbconn.Open
End Sub


При открытии соединения - ошибка "ошибочный пароль"
Пробовал еще так:
Код: vbnet
1.
2.
3.
4.
5.
6.
Private Sub ConnOpen()
    Set dbconn = CreateObject("ADODB.Connection")
    dbconn.connectionstring = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Q:\db.accdb;"
    dbconn.Properties("Jet OLEDB:New Database Password") = "123"
    dbconn.Open
End Sub


что собственно тоже самое, ну и результат тот же...
...
Рейтинг: 0 / 0
ошибочный пароль (Access 2010)
    #38036535
qwerty112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
andrberДобрый день!
Подскажите, где ошибка?
Имеется:
ОС WXP SP3
MS Office 2010
БД на ACCESS 2010 на сетевом ресурсе подмапленном в качестве диска Q: (доступ на создание/изменение/удаление на уровне ФС - есть)
БД зашифрована паролем: "123" (без кавычек). С этим паролем через интерфейс ACCESS успешно открывается.
Из файла EXCEL кодом на VBA пытаюсь подключиться к БД:
Код: pascal
1.
2.
3.
4.
5.
Private Sub ConnOpen()
    Set dbconn = CreateObject("ADODB.Connection")
    dbconn.connectionstring = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Q:\db.accdb;Jet OLEDB:Database Password=123;"
    dbconn.Open
End Sub


При открытии соединения - ошибка "ошибочный пароль"
Пробовал еще так:
Код: vbnet
1.
2.
3.
4.
5.
6.
Private Sub ConnOpen()
    Set dbconn = CreateObject("ADODB.Connection")
    dbconn.connectionstring = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Q:\db.accdb;"
    dbconn.Properties("Jet OLEDB:New Database Password") = "123"
    dbconn.Open
End Sub


что собственно тоже самое, ну и результат тот же...

ваще, первый вариант - правильный, - странно если не работает
http://connectionstrings.com/access-2007

>> что собственно тоже самое

может в этом и причина ?
во-втором случае, вы пишите, НЕ пароль к БД, а "НОВЫЙ" пароль БД ?
может и в первом варианте писали New Database Password, не ?
...
Рейтинг: 0 / 0
ошибочный пароль (Access 2010)
    #38037396
andrber
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Конечно же не
Код: vbnet
1.
dbconn.Properties("Jet OLEDB:New Database Password") = "123"


,а:
Код: vbnet
1.
dbconn.Properties("Jet OLEDB:Database Password") = "123"


Это я уже экспериментировал с разными параметрами. Просто не оттуда скопировал.

Первый пример скопировал в *.vbs запустил из операционки, заработало....
При этом тот же код, при запуске из модуля в EXCEL выдает ошибку (в т.ч. в режиме отладки).
Наверное это надо уже относить в раздел "Баги Access" :)
...
Рейтинг: 0 / 0
ошибочный пароль (Access 2010)
    #38103484
Дима Г
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andrber,
У меня тоже самое в Excel. Открываю через ADO базу accdb в которой есть связанные таблицы из зашифрованной базы (под паролем). Программно запросы от связанных таблиц не открываются, пишет, что "Ошибочный пароль". В среде Access все открывается. Базы были сконвертированы из mdb в accdb. Пароль из десяти символов латинскими буквами. Что делать?
...
Рейтинг: 0 / 0
ошибочный пароль (Access 2010)
    #38103563
Дима Г
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проблема решилась после ипорта "старой" базы в чистую базу "нового" формата.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
ошибочный пароль (Access 2010)
    #38549256
imort
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
ошибочный пароль (Access 2010)
    #38878385
Дима Г,

Проблема, как ты понял, как раз в совместимости.
Все это, действительно, можно починить, перейдя на новую базу.
Но если такой возможности нет, то можно решить проблему иначе.

Вот ответ на вопрос на очень хорошем ресурсе , который qwerty112 уже, кстати, упоминал:
авторNote! Reports say that a database encrypted using Access 2010 - 2013 default encryption scheme does not work with this connection string. In Access; try options and choose 2007 encryption method instead. That should make it work. We do not know of any other solution. Please get in touch if other solutions is available!
То бишь
1) удаляем свой пароль :
Файл - Расшифровать базу данных -> вводим пароль
2) меняем способ шифрования :
Файл - Параметры - Параметры клиента - Способ шифрования -> меняем на "как в предыдущей версии" (для обратной....)
3) устанавливаем пароль :
Файл - Зашифровать паролем -> дважды вводим пароль

Теперь VBA не ругается
...
Рейтинг: 0 / 0
ошибочный пароль (Access 2010)
    #39152692
EccoArts
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дмитрий Чуманов,

Напиши пожалуйста пример запроса.

Вот что у меня, но он пишет что "Ошибочный пароль"
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
 
Public Sub RunSQL()
    Dim CON As New ADODB.Connection
    Dim err As ADODB.Error
    Dim addresDB, prodName, prodCategory, countType As Variant
    Dim prodRowNumber, prodPrice, prodCount As Variant
    
    addresDB = CStr(Sheets(2).Cells(5, 3).Value)
    zada4a = CStr(Sheets(2).Cells(4, 3).Value)
On Error GoTo ErrorSub
    CON.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & addresDB
    CON.Properties("Jet OLEDB:Database Password") = "123"
    CON.Open
    CON.Execute (zada4a)
    Sheets(2).Cells(11, 3).Value = "Все норм!  -  " & Now
    CON.Close
    Set CON = Nothing
    Exit Sub
ErrorSub:
    For Each err In CON.Errors
        MsgBox (err.Description & " Источник: " & err.Source)
    Next
    Set CON = Nothing
End Sub
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / ошибочный пароль (Access 2010)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]