|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
05.12.2015, 11:27 | #1 | |
Пользователь
Регистрация: 23.01.2011
Сообщений: 21
|
MIDAS (DataSnap), ошибка Provider cannot be found
Добрый день, форумчане.
Появилась проблемка, я решил попробовать себя в разработке приложений для работы с БД. Цель такая, написать клиент-серверное приложение для доступа к БД. БД сделана на MS Access 2010 (Тестовая) Писал на ноуте где установлен MS office 2010 и 32х разрядная система Windows 7 pro. Сервер писал на нем же, но под ОС Windows Server 2008 r2 x64. Писал с помощью компонентов для сервера: TADOConnection, Remote Data Module в котором расположены ADOQuery и DataSetProvider Для клиента: TDCOMConnection и TSocketConnection TClientDataSet и TDataSource Здесь уже есть проблема, организовать связь по TDCOMConnection не получается, пишет "Отказано в доступе" (Пробовал запустить от имени администратора компилированный exe результат тотже) По TSocketConnection подключаюсь без проблем Сервер регистрирует данное событие. Но как только пытаюсь отправить SQL запрос, то в ответ получаю ошибку Цитата:
Код:
Еще я заметил, что если имя провайдера написать другое, тогда приходит другая ошибка : Код:
Последний раз редактировалось Stilet; 05.12.2015 в 11:31. |
|
05.12.2015, 11:34 | #2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
1) Ты хочешь трехзвенку? Можно узнать почему именно ее?
2) Нет желания попробовать отправлять на сервер запросы при помощи компонент от INDY? Я например успешно кручу idHTTP для однострочного запроса и idFTP для запросов где тысячи-миллионы строк в рамках транзакции.
I'm learning to live...
|
05.12.2015, 11:56 | #3 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Обычно по другому поступаю - запрос на сервере в ADOQuery. На него нацелен DataSetProvider. ClientDataSet нацелен на это провайдер и само собой на DCOMConnection или SocketConnection, какой уж используешь. И то и другое работоспособно. И ClientDataSet.Active:=True. Самой собой c Try ... Except
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
05.12.2015, 16:22 | #4 |
Пользователь
Регистрация: 23.01.2011
Сообщений: 21
|
Stilet, Вы совершенно правы, трехзвенку. Хотя я на самом деле еще путаюсь в понятиях. По мне трехзвенка это клиент-сервер-сервер БД
А у меня получается клиент-сервер(сервер бд) 2. Можно попробовать, но только как разберусь с возможностями DataSnap. Аватар, Я правильно понимаю, отличие Вашей схемы от моей это то, что запросы формируются на сервере а не на клиенте? Т.е. с клиента идет команда, а сервер интерпретирует ее как запрос так? В любом случаю попробую Ваше решение. Меня больше смущает почему DCOMConnection выдает отказ в доступе..( |
05.12.2015, 16:43 | #5 | |
Участник клуба
Регистрация: 10.08.2010
Сообщений: 1,389
|
Цитата:
2. Access это СУБД и не "клиент-серверное" А "файл серверный" ... полистал бы книгу для достижение ваши цель )
E_MAIL: rijgvina7@yahoo.com
|
|
05.12.2015, 17:18 | #6 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Для баловства и изучения возможностей трехзвенки можно и базу ACCESS, что не серьезно, она для этого не предназначена. Запросы сервер отправляет серверу баз данных, результат их выполнения клиенту. А формировать их можно и на клиенте, передавая их серверу, используя серверный метод. RemoteDataModule позволяет их наклепать сколько нужно. Ну это уже конкретная реализация
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
07.12.2015, 11:18 | #7 | ||
Пользователь
Регистрация: 23.01.2011
Сообщений: 21
|
Цитата:
Что касается моих слов "Цель такая, написать клиент-серверное приложение для доступа к БД. БД сделана на MS Access 2010 (Тестовая) " То здесь ничего противоречивого я не сказал, Access может и СУБД в целом, но это не мешает в ней сделать просто БД управление которой будет проводиться не ПО Access, а ПО написанным мною. От сюда следующий вопрос к Аватару: Вы писали Цитата:
Из-за плохой защищенности, мобильности? Можете посоветовать базу для среднего уровня по вашему опыту?)) Хотя я не уверен есть ли такое понятие, как "средний уровень" В целом вроде все понял, буду пробовать организовать граммотную трехзвенку для банального обмена данными. Т.е. подключение к серверу, делать запрос и получать ответ. После буду думать как организовать БД. |
||
07.12.2015, 11:34 | #8 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Что бы иметь в будущем проблемы по непоняткам с данными при реальной эксплуатации можно и ACCESS, но крайне желательно нормальную СУБД. FireBird, MySQL, MS SQL и прочее. Там как бесплатные так и платные варианты. ACCESS от любой из этих СУБД отличается как мопед от мерседеса.
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ошибка DataSnap server | mavlon_m | Общие вопросы Delphi | 3 | 18.10.2015 22:17 |
Ошибка В Delphi XE Item not found | aleksskay | Общие вопросы Delphi | 5 | 07.09.2014 11:28 |
ошибка Expected ':' but '=' found. в Delphi 7 | vizavill | Помощь студентам | 2 | 27.10.2011 20:14 |
Ошибка HTTP/1.1 302 Found | dharma | Работа с сетью в Delphi | 5 | 09.01.2011 17:18 |
ошибка http/1.1 302 found | pesi | Работа с сетью в Delphi | 2 | 10.09.2009 20:25 |