Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Организация сетевой базы данных [D6]


Страницы:   1 2

Clone_Of_Toxic ©   (2005-11-23 08:35:00) 

Здравствуйте!
Суть проблемы такова:
есть простенькая БД (одна таблица в файле *.DB) и корявенькая программа для управления таковой (добавить, удалить, найти). Возникла необходимость написать более мощную программу для работы с этой базой по сети. Т.е. несколько человек на разных компах сидят и работают с одной и той же базой данных: один добавляет, другой ищет, третий еще чего-нибудь с ней делает.
Поразмыслив над этой задачей, я пришел к выводу, что реализовать это нужно примерно так: на центральном компьютере, где хранится БД (назовем его Главным), находится маленькая невидимая программка-сервер, а на остальных компьютерах находятся программы-клиенты, которые обращаются с запросами к серверу, а тот совершает необходимые действия (выдает нужные записи, принимает от клиента отредактированные  записи и т.д.).
Вопрос: каким образом и с помощью какой технологии это можно реализовать? И еще: где можно найти исчерпывающую информация на русском языке по данной теме?

Спасибо.


ANB   (2005-12-01 10:48:00) [1]


> Я думал там типа роли/привилегии как то хитро устроены.

Не, с пользователями базы там позапутаннее, чем в оракле. А гранты стандартные. Кстати, накопал, что в MS SQL можно вырубить все констрейнты или триггера таблицы одной командой без указания их имен, а в оракле - нельзя.


Sergey13   (2005-12-01 10:45:00) [2]

2[38] ANB ©   (01.12.05 10:42)
А-а-а. Ты вон про что. Я думал там типа роли/привилегии как то хитро устроены. Потому и спросил.

А это да. Не помешал бы встроенный инструмент типа Девелопера или ТОАДа.

Еще раз сори за офтоп. Завязываю.


ANB   (2005-12-01 10:42:00) [3]


> Sergey13 ©   (01.12.05 10:37) [37]

В QA встроен хелп. В QA встроены шаблоны для всех возможных языковых конструкций (их не так и много). Т.е. даже не зная MS SQL, но хотя бы минимально владея английским, можно его изучить просто полазив по пунктам меню. Для первых приложений вполне достаточно. Сложные вещи можно спросить на форуме. А оракл в стандарте поставляет только SQL Plus и HTML справку, в которой не так просто найти нужное.


Sergey13   (2005-12-01 10:37:00) [4]

2 [36] ANB ©   (01.12.05 10:32)
> Но вот поддержка пользователей в MS SQL Server сделана намного круче, чем в оракле, ничего не скажешь.
В двух словах не раскажешь - чем. Я с МС не работал, просто интересно.
Сори за офтоп.


ANB   (2005-12-01 10:32:00) [5]


> alex_*** ©   (01.12.05 10:29) [35]

Угу. 2 недели.

MS SQL это не совсем г. Это я образно так. И мне оракл больше нравится (сугубо личное мнение). Но вот поддержка пользователей в MS SQL Server сделана намного круче, чем в оракле, ничего не скажешь. Еще бы форматалку в QA добавили, вообще клево было бы.


alex_***   (2005-12-01 10:29:00) [6]

ну я бы не говорил что MS SQL это г. Ты видел сколько людям нужно труда чтоб перейти на клиент-сервер после файл-сервера? Хотя для программы с перспективами развития лучше действительно сразу на серверную БД переходить.


ANB   (2005-12-01 10:20:00) [7]


> Только знаний нужно по-больше чтоб с ним работать.

Базовых знаний по аксессу для начала вполне хватит. T-SQL не такой уж сложный язык, а в QA его вообще можно методом тыка изучать - шаблоны почти на все случаи жизни встроены. И BOL довольно подробен. MS даже если делает г., то уж обертку все равно красивую цепляет.


alex_***   (2005-12-01 10:13:00) [8]

на каких это операционках сейчас наблюдается отсутсвие JET, ADO, DCOM? на win95 только если DCOM не стоит.  Но в setup закатать можно.
ну насчет того что проблемы в отсутствии JET, я бы сказал что внутри конторы парк машин зачастую боле-менее однообразен, по кр. мере к этому стараются придти. И проблем с отсутствеим jet быть не должно. По кр. мере можно и вручную проставить.
Конечно лучше сразу MSDE поставить. Только знаний нужно по-больше чтоб с ним работать.


Anatoly Podgoretsky   (2005-12-01 09:59:00) [9]

Sergey13 ©   (01.12.05 09:54) [31]
Особенно учитывая рекомендации Микрософт - не делать это и в самом Акцесс, Микрософт рекомендует использовать для базы MSDE, а чтобы подтолкнуть к этому он убрал JET из MDAC


Sergey13   (2005-12-01 09:54:00) [10]

2[29] alex_*** ©   (01.12.05 09:39)
>заточиться под Access, если соединений не десятки
Затачиваться изначально, для нового проекта, на Аксес, как сетевую БД, это по меньшей мере недальновидно. ИМХО.


Anatoly Podgoretsky   (2005-12-01 09:43:00) [11]

alex_*** ©   (01.12.05 09:39) [29]
Это с каких пор такая гарантия появилась, как раз одна из проблем с Акцесс это отсутствие JET, ADO, DCOM


alex_***   (2005-12-01 09:39:00) [12]

заточиться под Access, если соединений не десятки и данных не 500м, то все будет работать нормально. Дополнительно на клиента не надо ничего ставить. И доков куча


Alexandr Bydantcev   (2005-12-01 01:23:00) [13]

2 Valera
К примеру, такая "хрень" работает в случае 1С. Но пошел уже оффтоп.


Valera   (2005-12-01 01:06:00) [14]

ты хочешь DBF на каком-то шумном сервере ставить чтобы шарить их в сеть и чтоб вся эта хрень не сильно напрягаясь быстро работала? Не забывай что на каждой машине в сети в этом случае нужно BDE для твоих клиентом инсталить. Спрыгивай лучше на MSSQL, mySql, Sybase, Oracleили хотя бы что-нибудь ADO-образное. Кстати модель базы можно наклепать даже с клиентами на VBA в MS Excel. В Delphi хорошо для этого использовать компоненты SQLquery, InfoPower 4000 и желательно FastReport чтоб никакая скотина в сети не тратила свое рабочее время на зановоперенаписаниетогочтоужебылосторазнаписано. Отчеты все равно понадобятся и будут нужны для всяких других жизненных гадостей. А сетевой диск можно настроить (хоть и необязательно) как внутренний файл-сервер с доступом только от клиентсой стороны программ но не пользователя. Это легко делается в домене W2K Advanced Server. В принципе можно оставить W2K просто как сервер и все.


Alexandr Bydantcev   (2005-11-28 22:57:00) [15]

Для небольшого количества клиентов можно и просто общую папку с базой открыть :)


ASDF234   (2005-11-26 23:28:00) [16]

Desdechado ©   (24.11.05 11:10) [24]
согласен ForcedWrites, а вот бэкапитьне не у всех дол..бов желание есть (это уже личные проблемы)


Desdechado   (2005-11-24 11:10:00) [17]

ASDF234   (24.11.05 00:30) [17]
> ну базы под FireBird, yafil и interbase при вырубании питания летят
> периодически до сих пор
если ForcedWrites включить, то отлетают только незавершенные транзакции, что правильно
и бэкапить тоже иногда надо

> Так что без ИБП никуда!
это в любом случае


alex_***   (2005-11-24 10:51:00) [18]

ну да. так и делал. Только ребутнуться надо было сначала, поскольку винда считала что файл используется. А это, сами понимаете, не есть хорошо. Да и бегать каждый раз на машину с бд тоже не фонтан.


Виталий Панасенко   (2005-11-24 10:40:00) [19]


> alex_*** ©   (24.11.05 10:19) [20]
> Пользуясь случаем хочу выяснить один момент: в парадоксе
> решается проблема блокировок, когда клиент заблокировал
> таблицу и слетел? После этого блокировку я вручную убивал.
>  Давно это было, но помню мучался с этим. Может я чего-то
> не знал тогда?

Работает склад с 2001 года.. Бывают ИНОГДА приколы.. А где их не бывает ? Не, я согласен, Жар-Птица приятней.. Сам на ней уже "сижу" :-)).. Но зачем человеку "баки забивать" ? Ведь, повторюсь, если не изголятся, программы УЖЕ СЕТЕВЫЕ... А блокировка.. Честно, ни разу не было такой проблемы.. Т.е. что-бы клиент падал и потом были проблемы...А решение.. думаю, удалить *.LCK файло достаточно было...


Sergey13   (2005-11-24 10:28:00) [20]

Микроскопом можно таки забивать гвозди. Однозначно можно. Доказано.
Вопрос - зачем? Но это уже никого не интересующие детали.
8-)


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо