![]() |
|
|
![]()
|
|
| AzuManga |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 168 Регистрация: 12.5.2005 Репутация: нет Всего: нет |
Здравствуйте, коллеги 8))
Проблема такова - необходимо, чтобы приложение работало с файлом mdb, расположенным в сети (адрес компьютера и папка известны 8)) ). Как надо настроить ConnectionString у ADOConnection, чтобы можно было работать не только с базой, расположенной на локальном компьютере? При попытке подключиться через Microsoft Jet OLE даже к локальной БД при первом же ADODataSet.Open возникает OLEException "Не было задано свойство, доступное только для чтения", а при закрытии приложения возникает "Неопознанная ошибка" пример строки подключения: Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\FTP_2\Dev\TestPlan\TestPlan.mdb;Persist Security Info=False При выборе в качестве провайдера Microsoft OLE DB for ODBC Drivers можно выбрать только файлы mdb, которые находятся только на локальной машине. Подскажите, пожалуйста выход из ситуации. --------------------
Точка с запятой; |
|||
|
||||
| Bes |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 806 Регистрация: 8.12.2004 Репутация: 2 Всего: 7 |
Я так работаю - никаких проблем. Только я АДОДатаСетом не пользуюсь даже не знаю зачем он только АДОКвери или АДОТэйбл на худой конец
|
|||
|
||||
| AzuManga |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 168 Регистрация: 12.5.2005 Репутация: нет Всего: нет |
А можете написать каким провайдером Вы пользуетесь? Jet или ODBC ?
--------------------
Точка с запятой; |
|||
|
||||
| AntonSaburov |
|
|||
![]() Штурман ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5658 Регистрация: 2.7.2002 Где: Санкт-Петербург Репутация: нет Всего: 118 |
Я думаю, что проще будет работать через JET.
|
|||
|
||||
| SergeBS |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1111 Регистрация: 10.6.2005 Где: Владимир Репутация: 11 Всего: 22 |
AzuManga
Берешь Фленова "Библия Delphi". Как-то так называется, хотя тянет не на библию, а на шпаргалку для двоешника. Там какая-то глава - как раз ADO+Access+растопырка пальцев как подключаться. Хотя только за подключение через ADO к Access в изолированном от других БД приложении нужно расстреливать без права переписки: Jet это и есть Access по большому счету (движок всей СУБД). |
|||
|
||||
| Петрович |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1000 Регистрация: 2.12.2003 Где: Москва Репутация: 6 Всего: 55 |
-------------------- Все знать невозможно, но хочется |
|||
|
||||
| YurikGL |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 5.7.2005 Где: Уфа Репутация: нет Всего: 2 |
Подключение через ADO по сети происходит точно так же, как и локально... Если через JET
Вроде профи говорят, что зря так... датасет вроде лучше, а тейбл и квери сохранены только для совместимости с BDE --------------------
|
|||
|
||||
| AzuManga |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 168 Регистрация: 12.5.2005 Репутация: нет Всего: нет |
Большое спасибо за внимание, пользуюсь Microsoft OLE DB for ODBC, просто не обнаружил второпях кнопочку Сеть.. в редакторе строки подключения 8)) Заказчик все нервы затеребил просто 8)) Никаких подводных камней тут нет 8))
--------------------
Точка с запятой; |
|||
|
||||
| Bes |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 806 Регистрация: 8.12.2004 Репутация: 2 Всего: 7 |
Вот моя дфмочка - думаю этого достаточно.
Это сообщение отредактировал(а) Bes - 13.7.2005, 08:17 |
|||
|
||||
| Петрович |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1000 Регистрация: 2.12.2003 Где: Москва Репутация: 6 Всего: 55 |
Ну вот, естественно ADO+Jet -------------------- Все знать невозможно, но хочется |
|||
|
||||
| SergeBS |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1111 Регистрация: 10.6.2005 Где: Владимир Репутация: 11 Всего: 22 |
Петрович
Имел в виду "Хотя только за подключение через ADO + ODBC, " естественно - т.е. правильно: ConnectionString = Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\D5\Access\Борей.mdb;Persist Security Info=False или Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\\room14\work\iko\ssb\Борей000.mdb;Persist Security Info=False А если OLE DB + ODBC + Jet, то это 2 лишних звена. Или урезание функциональности без Jet. |
|||
|
||||
| Петрович |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1000 Регистрация: 2.12.2003 Где: Москва Репутация: 6 Всего: 55 |
to SergeBS
Вот теперь согласен Попутно, упрощенно, отмечу что: Jet - "движок" обслуживания БД MSACCESS ADO - современный интерфейс Microsoft для доступа к данным ODBC - устаревший интерфейс Microsoft для доступа к данным. И живет он в основном для совместимости со старыми приложениями. А также для доступа к данным для которых нет драйверов доступа через ADO. Соответственно, возможны след.варианты: ADO -> Jet и ADO -> ODBC -> Jet Понятно что последний вариант для вновь разрабатываемого приложения это нонсенс -------------------- Все знать невозможно, но хочется |
|||
|
||||
![]()
|
| Правила форума "Delphi: Базы данных и репортинг" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |