Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > СУБД, общие вопросы > Однов-ное развитие локальной и клиент-серверной БД


Автор: BOB4uK 2.1.2010, 14:51
Всем привет!
У меня есть небольшая программа (написана на C++Builde 6), я хочу прикрутить к ней БД (есть в этом необходимость).

Хотелось бы сделать две версии программы: одна локальная версия (ставится на стационарный ПК и один пользователь, ведет БД), а вторая клиент сервер (чтобы БД поставить на сервере и программу разнести по ПК в этой сети).

У меня нет опыта работы с серверными БД.
Отсюда возникает несколько вопросов:
1. Что нужно учесть в написании программы, что бы с минимальными изменениями в КОДЕ, можно было откомпилировать и получить две версии программы (локальную и клиент-серверную)?
2. Какую БД выбрать исходя из  следующих критериев: 
  * дешевая СУБД (лучше бесплатная)
  * простая в установке
  * не требующая обслуживания
  * чтобы могла работать как с локальной версией программы, так и с клиент-серверной (если это возможно на одной СУБД)
  * чтобы структуру БД можно было защитить паролем (чтобы не изменяли данные вручную и вход был по паролям)

И еще один вопрос не по теме: Какие бывают БД хранящиеся в одном файле?

Автор: Gluttton 2.1.2010, 15:15
Цитата(BOB4uK @  2.1.2010,  14:51 Найти цитируемый пост)
Хотелось бы сделать две версии программы: одна локальная версия (ставится на стационарный ПК и один пользователь, ведет БД), а вторая клиент сервер (чтобы БД поставить на сервере и программу разнести по ПК в этой сети).

Работаешь только с серверной БД, а для локального использования подключаешся к серверу 127.0.0.1 (он же localhost)...

Цитата(BOB4uK @  2.1.2010,  14:51 Найти цитируемый пост)
1. Что нужно учесть в написании программы, что бы с минимальными изменениями в КОДЕ, можно было откомпилировать и получить две версии программы (локальную и клиент-серверную)?

Выше написал...
Цитата(BOB4uK @  2.1.2010,  14:51 Найти цитируемый пост)
2. Какую БД выбрать исходя из  следующих критериев: 
  * дешевая СУБД (лучше бесплатная)

Firebird, MySQL, PostgreSQL полностью бесплатны...
MS SQL Server, Oracle имеют бесплатные версии (с различного рода ограничениями)...
Цитата(BOB4uK @  2.1.2010,  14:51 Найти цитируемый пост)
 * простая в установке

Firebird, MySQL, PostgreSQL...
Цитата(BOB4uK @  2.1.2010,  14:51 Найти цитируемый пост)
 * не требующая обслуживания

А это как smile ?
Цитата(BOB4uK @  2.1.2010,  14:51 Найти цитируемый пост)
* чтобы могла работать как с локальной версией программы, так и с клиент-серверной (если это возможно на одной СУБД)

Не уверен, но помоему все во всяком случае из перечисленных здесь...
Цитата(BOB4uK @  2.1.2010,  14:51 Найти цитируемый пост)
 * чтобы структуру БД можно было защитить паролем (чтобы не изменяли данные вручную и вход был по паролям)

Знаю, что в Firebird до 2.1 точно БД не защищена, а защищен доступ к серверу (т.е. при физической краже файла БД он полностью доступен) вроде бы в Firebird это собираются устранить то ли с версии 3.0, то ли уже в 2.5 устранили...
А за другие СУБД не скажу - не сталкивался...
Цитата(BOB4uK @  2.1.2010,  14:51 Найти цитируемый пост)
Какие бывают БД хранящиеся в одном файле?

Firebird, MySQL, MS SQL Server, остальные скорее всего тоже да, но я не сталкивался...

По моему, только FoxPro хранит каждую таблицу в отдельном файле и по моему она же не умеет работать в сети...

А вообще http://forum.vingrad.ru/forum/topic-30912/0.html рекомендуется к прочтеню в обязательном порядке smile ...

С Новым годом smile !

Автор: BOB4uK 2.1.2010, 15:42
MS Access может работать по сети?

Автор: LSD 4.1.2010, 15:04
Цитата(BOB4uK @  2.1.2010,  15:42 Найти цитируемый пост)
MS Access может работать по сети?

В принципе может, но для сетевого доступа лучше использовать другую СУБД.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)