powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Delphi and Access
4 сообщений из 4, страница 1 из 1
Delphi and Access
    #32087189
var_max
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
Всем привет. 
Планируется написать клиентское приложение, работающее в локальной сети,
 способное подключаться к БД Access (находящееся на сервере), база 
конечне же должна быть по поролем.    Итак, пытаюсь приконнектиться к 
запароленной базе данных Access из приложения Delphi  при помощи 
компонента TADOConnection (вызываю диалоговое окно ConnectionString - на 
вкладке Provider выбираю Microsoft.Jet.OLЕDB. 4 . 0  - на вкладке Connection 
указываю расположение БД, User name: Admin  и Password: ***** - выбираю 
Test Connection бац!!! сообщение об ошибке: НЕ УДАЕТСЯ ЗАПУСТИТЬ 
ПРИЛОЖЕНИЕ. СИСТЕМНАЯ БАЗА ДАННЫХ ОТСУТСТВУЕТ ИЛИ ОТКРЫТА С 
МОНОПОЛЬНЫМ ДОСТУПОМ ДРУГИМ ПОЛЬЗОВАТЕЛЕМ. 

Пороль в Access'e был задан следующим образом: монопольно открыл БД
 (иначе ругается), сервис - защита - задать пороль БД. Все. 

По идеи все должно работать, но! увы. 

ПОДСКАЖИТЕ в чем дело?  Как наладить взаимодействие с БД, исполльзуя ADO?
...
Рейтинг: 0 / 0
Delphi and Access
    #32089195
Шурик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А вы не пробовали в строке соединения указывать путь к системной БД

Например :
Jet OLEDB:System database=sdb.mdw;

ведь пароли хранятся именно в ней.

По умолчанию
"...:\Program Files\Common Files\System\SYSTEM.MDW"

кажется.
...
Рейтинг: 0 / 0
Delphi and Access
    #32089310
SilencerID
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ты путаешь установку пароля на БД с паролем для Юзера.
В АДО есть параметры: UserID, Password - которые используются для определения юзера, и параметр Database Pasword - который ты и задал в базе, но не определил в TADOConnection.

Системная тут не причем и убери все символы для пароля админа, если он пустой.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Delphi and Access
    #38144229
skarabey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
var_max,
Долго ковырялся на форумах не смог ничего найти толкового =).
Решил проблемку так Delphi 7:

Вообщем то я в этом деле новичок и решаю проблемы как умею так что если кому не понравится мой метод ...

В самой базе установил пароль следующим образом:
(Файл) -> (Открыть) выбрал базу -> с права от кнопки открыть в выпадающем списке выбрал (Монопольно)
Далее
В открывшейся базе данных вкладка (Сервис)->(Защита)->(Задать пароль базы данных), все закрыл базу пошел в Delphi.

В свойствах ADOConection -> ConectionString
Далее
во вкладке поставщик данных поменял с Microsoft Jet 4.0 OLE DB Provider на Microsoft OLE DB Provider for ODBC Drivers
Далее
Во вкладке (Подключение) выбрал (Использовать строку подключения) -> (Сборка)
Далее
В поле (Имя DNS)->кнопка (Создать)
Далее
В появившемся окне выбрать пункт (Driver do Microsoft Access (*.mdb)) -> Кнопка( Далее)
Далее
Выбрать путь к месту будущего хранения ключа
Далее
Нажимаем кнопку (Далее) -> (Готово)
Далее
В появившемся окне нажимаем кнопку (Выбрать)
Далее
В появившемся окне в правом списке (Каталоги) выбираем папку с файлом базы, а затем в левом списке (Имя базы данных) название базы данных и нажимаем (Ок) в предыдущем окне тоже нажимаем (Ок) появится маленькое окошко с полями логина и пароля, соответственно вводим логин и пароль которые были установлены в базе пример (Логин: Admin Pass: 1) и нажимаем (Ок)
Далее
В окошке (Выбор источника данных) выбираем созданный файл пример (db1.mdb) не базу а ключ который создали ранее
Далее
Нажимаем (Ок) и у нас опять начнут открываться по очереди окна которые были ранее но теперь просто нажимаем (Ок) еще раз вводим пароль и нажимаем (Ок).
Далее
Теперь мы вернулись к окошку (Свойства связи с данными) в 3 пункту (3. Введите начальный каталог с данными) выбираем папку с нашей бд и нажимаем (Ок).

Вот в принципе и все проверяем что получилось =).

Примечание: Логин и пароль в окне (Свойства связи с данными) во вкладке (Подключение) в пункте (Для входа в сервер) вводить не нужно иначе подключение будет автоматическим, оставляем пустым.

Примечание: Если у вас в проге имеются дополнительные формы которые тоже используют подключение к базе, то в них тоже нужно выбрать тот же ключ и в окне (Свойства связи с данными) во вкладке (Подключение) в пункте (Для входа в сервер) нужно ввести логин и пароль и поставить галочку запомнить в противном случае будут появляться ошибки.

Примечание: Даже если нажать отмена при вводе логина и пароля программа откроется но несмотря на то что некоторые дополнительные формы имеют подключение к базе с жестко прописанными логинами и паролями они не смогут повлиять на базу пока не будет осуществлен вход при запуске программы =).
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Delphi and Access
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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