На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! ПРАВИЛА РАЗДЕЛА · FAQ раздела Delphi
Пожалуйста, выделяйте текст программы тегом [сode=pas] ... [/сode]. Для этого используйте кнопку [code=pas] в форме ответа или комбобокс, если нужно вставить код на языке, отличном от Дельфи/Паскаля.
Обязательно указание:
1) типа базы данных (Paradox/Oracle/Interbase и т.п.)
2) способа доступа к базе данных (ODBC/ADO/DAO/BDE и т.п.)
Например: Paradox/BDE, MS Access/ADO

Наиболее часто задаваемые вопросы:
Базы даных для начинающих. Первые шаги. Понятие о BDE.
Переход на клиент-сервер и начала ADO
Приёмы работы с BLOB (OLE/Memo) полями
Запросы и параметры или как избавиться от многих проблем. Проблемы с датами в запросах.
Нужели мне нужно устанавливать BDE? (или почему не работает программа на другом компьютере)
Модераторы: Bas, Rouse_
  
> Не могу подключиться к Access 2007 с паролем через ADO , Через ODBC без проблем, а через...
    Всем добрый день.

    У меня проблемка с авторизацией Access 2007.
    Решил обновиться до 2007 версии базы, дабы нужно шифрование и более стойки пароль к взлому.
    Пароль внес через Access через "Работа с базами данных\Зашифровать данные", пароль внес естественно сложный и 20 значный. Скопировал в блокнот что бы не забыть (его и запомнить не реально то).
    Пробовал до установки пароля подключиться через Provider=Microsoft.ACE.OLEDB.12.0 средствами ADO. Все OK, подключение есть, запросы выполняются.
    После установки пароля выходит вот такая ошибка:
    user posted image
    База в этот момент закрыта, т.е даже сам Access закрыт.
    Если настрокить тоже самое, но через ODBC что все OK, пароль проходит и данные через ADO грузятся (естественно там уже указываю провайдер ODBC).

    Почему не получается авторизоваться без ODBC ?
    Сообщение отредактировано: Sergey_T -
        НАШЕЛ ОТВЕТ !!!!!!!!! :D
        Вот тут обсуждали такую же тему (ну не нашел я её раньше):
        Соседний форум
        Цитат с решение:
        ExpandedWrap disabled
          Предположим, что база данных "ShifrBD.mdb" у вас зашифрована паролем "Ich_bin_pryacgu_bd_Chtobi_nikto_ne_Smotrel".
          Теперь программирование: (или простая установка настроек):
          Кидаете на форму компонент ADOConnection1 щелкаете по нему два раза, откроется окно ConnectionString, щелкаете по кнопке Build переходите на окно с настройками, (т.к. у меня MS Office 2007, то я выбираю на вкладке "Поставщик данных" 'Microsoft Office 12 ...', теперь на вкладке "Подключение", в окне поставщик данных я ввожу имя моей защифрованной БД "ShifrBD.mdb" (т.к. она находится вместе с создаваемой мною программой, то ввожу просто имя, но если она находися не в каталоге с моей программой, то я должен тут прописать полный путь к БД).
          А вот теперь самое интересное и ответ на твой вопрос:
          Перходим на вкладку "Все", и щелкаем два раза по строчке JetOLEDB DataBase Password, и в открывшемся окне, в поле "Значение свойства" пишем свой пароль, в моем примере это: Ich_bin_pryacgu_bd_Chtobi_nikto_ne_Smotrel
          Нажимаем окей, на вкладке "Подключение" нажимаем, проверить подключение и все должно работать!!!


        Добавлено
        Цитата Bas @

        Не пробовал, но я так понял там про Access 2003 говорят, т.к. там используют обращение к файлу рабочей группы, а в 2007 группы вроде как убрали (читал много, каша в голове, но запомнил пока так) и судя по сообщению Дата 10.01.05 т.е в 2005 году ещё не было 2007 Access'a, следовательно не мог автор сообщения писать способ для Access 2007.

        Все равно спасибо, тоже позновательно.


        По поводу системной базы:
        ExpandedWrap disabled
          Provider=Microsoft.ACE.OLEDB.12.0;User ID=Admin;Data Source=basa.accdb;Mode=Share Deny None;Extended Properties="";
          Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDB:Database Password="пароль";
          Jet OLEDB:Engine Type=6;Jet OLEDB:Database Locking Mode=1;Jet OLEDB:Global Partial Bulk Ops=2;
          Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;
          Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;
          Jet OLEDB:SFP=False;Jet OLEDB:Support Complex Data=False

        System database="" не указывается и при такой настройке подключение проходит.
        0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
        0 пользователей:


        Рейтинг@Mail.ru
        [ Script execution time: 0,2411 ]   [ 16 queries used ]   [ Generated: 2.10.25, 19:08 GMT ]