Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2008.03.30;
Скачать: [xml.tar.bz2];

Вниз

какую СУБД выбрать выбрать   Найти похожие ветки 

 
md10   (2008-02-09 15:11) [0]

Задача такая - составить  базу данных преподавателей и студентов УЗ(1500 чел).
Хочу сделать так: под каждое отделение свой файл - 5 отделений;
в каждом файле 15 таблиц - таблица на каждую группу;
в каждой таблице 20 записей о студентах - их общие сведения, характеристики, фото и пр.
(То есть такая моделька:
                                     база
           Отделения             I
  --------------------------------------------------------
  I                I                   I                  I                    I
 ...             ....              группы            ....                 ...
                                       I
       ---------------------------------------------------
       I    I    I    I     I     I    I     I    I     I    I     I    I    I
       I
       I
       I   Студенты
       ------------------------------------------
       I      I   II II II    I   I   I    I  II II II I I I    I
 Иванов Петров Абрамович
1500 база=5отд Х 15групп Х 20чел)
Работа как локально с БД, так и по сети.
Хочу использовать InterBase.
Какую посоветуете вы? Как лучше распределить стркутуру?


 
turbouser ©   (2008-02-09 15:14) [1]


> 15 таблиц - таблица на каждую группу

Достаточно одной таблицы. А лучше две - 1-студенты 2-группы

> Хочу использовать InterBase.

Тогда уж FireBird.


 
turbouser ©   (2008-02-09 15:18) [2]


> под каждое отделение свой файл

Тоже неверно. Зачем такой огород городить...
Вот так примерно будет (с учетом информации из [0]):

Студенты
    |
    |-Группы
         |
      |-Отделения


> в каждой таблице 20 записей о студентах

Это не записи... Это поля...


 
Игорь Шевченко ©   (2008-02-09 15:20) [3]

Oracle XE


 
turbouser ©   (2008-02-09 15:20) [4]

Сбилось :)

Студенты
   |
   |-Группы
        |
        |-Отделения


 
korstin ©   (2008-02-09 15:21) [5]

Таблица отделений, таблица групп, таблица студентов.
Все в одном файле. СУБД - та, которую знаешь


 
md10   (2008-02-09 15:25) [6]

Запись - это строка, столбец - это поле. Вроде так раньше было.

  имя_столбец I фамилия_столбец I фото_столбец I
______________I________________I_____________ I
1 Петя              I Иванов              I   BLOB             I  - строка
здесь 20 записей
...
...
20 Сидор          I Петров               I BLOB               I


 
md10   (2008-02-09 15:29) [7]


> Сбилось :)
>
> Студенты
>    |
>    |-Группы
>         |
>         |-Отделения

Чего то я не догоняю - может у нас с вами просто деревья в разные стороны растут - я имею ввиду, что корень это ОТДЕЛЕНИЯ, дальше шире ГРУППЫ и крона эта СТУДЕНТЫ. Судя по вашей схеме студент 1, от него несколко групп, от них еще больше отделений. Или у вас корнем дерева является ОТДЕЛЕНИЯ?


 
md10   (2008-02-09 15:30) [8]


> Тогда уж FireBird.

1. Почему бёрд?
2. Почему лучше Бёрд чем иБейс?


 
turbouser ©   (2008-02-09 15:32) [9]


> md10   (09.02.08 15:25) [6]
>
> Запись - это строка, столбец - это поле. Вроде так раньше
> было.

И сейчас так :-)
Просто в [0] двусмысленно звучит
> в каждой таблице 20 записей о студентах - их общие сведения,
>  характеристики, фото и пр.

Натренированный телепатор сразу же заподозрит ошибку :-)


 
md10   (2008-02-09 15:33) [10]


> Oracle XE

Почему?


 
md10   (2008-02-09 15:35) [11]


> Натренированный телепатор сразу же заподозрит ошибку :-)

Ну да, извиняюсь. Конечно же поля со сведениями Имя Возраст Пол...., и записи соответственно количеству студентов группы.


 
Petr V. Abramov ©   (2008-02-09 15:37) [12]


> md10   (09.02.08 15:33) [10]

SQL в разы мощнее -> проще разрабатывать.


 
turbouser ©   (2008-02-09 15:38) [13]


> Или у вас корнем дерева является ОТДЕЛЕНИЯ?

Именно.

> 1. Почему бёрд?
> 2. Почему лучше Бёрд чем иБейс?

1. FB абсолютно бесплатный.
2. см. 1 :-)


 
md10   (2008-02-09 15:42) [14]


> SQL в разы мощнее -> проще разрабатывать.

ну если имеется ввиду язык SQL, то именно его я и собираюсь использовать


 
Игорь Шевченко ©   (2008-02-09 15:45) [15]

md10   (09.02.08 15:33) [10]

Потому что мощная и бесплатная


 
turbouser ©   (2008-02-09 15:45) [16]


> md10   (09.02.08 15:33) [10]
>
>
> > Oracle XE
>
> Почему?

А микроскопом гвозди заколачивать сподручнее


 
PEAKTOP ©   (2008-02-09 16:56) [17]

> md10   (09.02.08 15:30) [8]
> 1. Почему бёрд?
> 2. Почему лучше Бёрд чем иБейс?


1. Sofware like sex. It is more better when it"s free. (c) Линус Торвальдс
2. Потому, что
1) по функционалу убежала далеко вперед и самое главное - продолжает бежать.
2) отечественная (по ведущим разработчикам).
3) Писать ПО можно по-всякому:
 -- Delphi/CBuilder + FCL (IBO, FIBPlus, IBX, FreeIB)
 -- M$ Visual Studio + FirebirdAPI
 -- Java+JDBC
 -- PHP
 -- Python
 -- Все "изыги праграммирования", входящие в поделку .Net
То есть если завтра надо будет че-то дорабатывать, (а еще желательней на новомодном языке :) ), то можно легко "переключиться".


 
md10   (2008-02-09 18:10) [18]


> 1. Sofware like sex. It is more better when it"s free. (c)
> Линус Торвальдс

У кого из вас на личном домашнем ПК установлена лецензионная полная версия Delphi, C++Builder, BDS?


 
turbouser ©   (2008-02-09 18:13) [19]


> md10   (09.02.08 18:10) [18]

У меня установлена, например. К чему вообще такие вопросы?


 
Игорь Шевченко ©   (2008-02-09 18:22) [20]

md10   (09.02.08 18:10) [18]

Невежливый


 
md10   (2008-02-09 18:31) [21]


> Игорь Шевченко ©   (09.02.08 18:22) [20]
> md10   (09.02.08 18:10) [18]
>
> Невежливый

В смысле?


 
PEAKTOP ©   (2008-02-09 18:31) [22]

> У кого из вас на личном домашнем ПК установлена лецензионная полная версия Delphi, C++Builder, BDS?
Делфи лицензируется на пользователя, а не на ЭВМ. То есть я могу установить их хоть сто штук на разных ЭВМ, но пользовать одновременно в единицу времени могу только одну.

Поэтому, ответ на вопрос - да, D7Pro.


 
md10   (2008-02-09 18:34) [23]

всем у кого есть>>
сколько ст"оит?
почему не используете нелицензионные?
как быстро накопили на лицензию?


 
PEAKTOP ©   (2008-02-09 19:06) [24]

> сколько ст"оит?

http://ibase.ru/ - тама прайсы последние лежат.

> почему не используете нелицензионные?

У нас (в Украине) первая волна борьбы с нелицензионным ПО в 2001 г. была - и диски бульдозерами "катали", и палатки на рынках разгоняли, и клубы компьютерные закрывали. Потом поутихли. Сейчас вообще всем все по-барабану - у 90% предприятий стоит Windows "с таблэткой" и никому ничего не надо (потому, что на балансе предприятия ни одной ЭВМ нет, все ЭВМ - личные веши сотрудников, принесенные ими на работу, их "шоб посмотреть" отдельный ордер нужен, причем на каждого). Исключение составляют ноутбуки с предустановленным ПО и новые белые (в смысле с налоговой накладной) компьютеры от ведущих продавцов (АМИ, МКС, Фокстрот).

Ну вот в те времена (2001) я и задумался об лицензионной чистоте. Работы тогда сделал много: ни одного стороннего компонента я не использую, за исключением TeeChart. Второе, что тогда было актуально  - кроссплатформенность. Поэтому все без проблем собирается в Kylix3.

Ну, вот так и жили все эти годы. А Delphi я купил только тогда, когда объявили об окончании продаж в октябре/ноябре 2007. Конечно, в CGRS2007 (с таблэткой) я собераю проекты без проблем, только не хочется херить Kylix-совместимость. Не то, чтобы это актуально, просто труда жалко. Да и мало ли, что будет дальше - вон, недавно в ВТО вступили. А что дальше пендосы запоют - неизвестно. Так, хоть есть возможность перевести клиентов на LINUX. Хотя, может мне эта возможность не понадобиться никогда.


 
Игорь Шевченко ©   (2008-02-09 19:07) [25]

md10   (09.02.08 18:31) [21]


> В смысле?


В смысле вопросы невежливые задаешь.


> почему не используете нелицензионные?


Зачем ?


 
md10   (2008-02-09 20:35) [26]

Вопрос, у кого есть лицензионный софт, неприличный? Ну тогда извините, Игорь Шевченко.


 
MsGuns ©   (2008-02-09 22:05) [27]

>PEAKTOP ©   (09.02.08 19:06) [24]
>потому, что на балансе предприятия ни одной ЭВМ нет, все ЭВМ - личные веши сотрудников, принесенные ими на работу

У вас неправильное "предприятие"


 
Anatoly Podgoretsky ©   (2008-02-10 01:52) [28]

> md10  (09.02.2008 15:11:00)  [0]

Если ты начал с подсчета файлов, то неправильной дорогой идешь.


 
Petr V. Abramov ©   (2008-02-10 02:15) [29]


> Anatoly Podgoretsky ©   (10.02.08 01:52) [28]

надо было с подсчета лицензий на готовый продукт и с защиты от взлома программы


 
Marser ©   (2008-02-10 03:32) [30]


> md10   (09.02.08 18:34) [23]
>
> всем у кого есть>>
> сколько ст"оит?

Oracle XE бесплатен, FB тоже...


 
turbouser ©   (2008-02-10 03:59) [31]


> Oracle XE бесплатен

Еще у IBM есть бесплатная версия, у MS есть...
И все с различными ограничениями. Вот нафига эти обрезанные монстры автору?
Для базки из трех таблиц и весьма скудными перспективами роста??


 
Sergey Masloff   (2008-02-10 13:07) [32]

turbouser ©   (10.02.08 03:59) [31]
>Вот нафига эти обрезанные монстры автору?
Удобство. XE ставится также фактически одной кнопкой, администрирования не требует. Писать намного удобнее. Остается вопрос - на фига тут IB/FB? Я сам с интербейзом работал начиная с 4 версии, с, не помню уже 96 или 97 года. Да система классная, удобная, быстрая. Лет 5 использовал параллельно с Oracle для небольших проектов. Сейчас буду использовать FB только если понадобится однопользовательская Embedded база. Практически для всех остальных случаев XE, на мой взгляд, предпочтительнее.
 Хотя интербейз очень люблю, мы его называли раньше "наш маленький Oracle" ;-)


 
sniknik ©   (2008-02-10 13:20) [33]

> и весьма скудными перспективами роста??
не знаю как там с XE, а у упомянутой тобой MS базы у обрезанной и нормальной версии сервера не различаются т.е. если нужен "рост" и размеров не хватает то покупаешь нормальную версию и работаешь дальше с той же базой.
на то и расчет у них, поработал, "вырос", после или переписывать или купить.
и купить будет дешевле...
а ограничение там исскуственное.


 
Sergey Masloff   (2008-02-10 13:26) [34]

sniknik ©   (10.02.08 13:20) [33]
У XE то же. Ну у меня были проблемы с переносом рабочей базы из-под "большого" Oracle в XE но во-первых решаемые а во-вторых там действительно специфика которой в большинстве проектов нет.
 Перенос наоборот - из XE в "старшие" проблем не вызывает. Так что то же самое что с MS SQL


 
Черный Шаман   (2008-02-10 17:52) [35]


>
> md10   (09.02.08 15:11)
>
> Задача такая - составить  базу данных преподавателей и студентов
> УЗ(1500 чел).
> Хочу сделать так: под каждое отделение свой файл - 5 отделений;


Киньте в меня камень, если докажете, что FireBird это не потянет.


 
Petr V. Abramov ©   (2008-02-10 17:55) [36]

да поняет.
просто XE - минус 30% гимра на разработке
               плюс    5% гимра на сопровождении


 
Черный Шаман   (2008-02-10 17:56) [37]


> Sergey Masloff   (10.02.08 13:07) [32]


А Oracle XE можно установить "тихо"?


 
Petr V. Abramov ©   (2008-02-10 17:57) [38]


> Черный Шаман   (10.02.08 17:56) [37]

что значит тихо? не матюгаясь? можно
:)


 
turbouser ©   (2008-02-10 18:02) [39]


> Petr V. Abramov ©   (10.02.08 17:55) [36]

Ок. FB:
- 90% траблов с разработкой
- 99 % проблем с сопровождением


 
turbouser ©   (2008-02-10 18:03) [40]

- это м-и-н-у-с
:-)


 
Petr V. Abramov ©   (2008-02-10 18:04) [41]


> turbouser ©   (10.02.08 18:03) [40]

а ты и с тем и с тем работал?


 
turbouser ©   (2008-02-10 18:07) [42]


> Petr V. Abramov ©   (10.02.08 18:04) [41]
>
>
> > turbouser ©   (10.02.08 18:03) [40]
>
> а ты и с тем и с тем работал?

Да.


 
Petr V. Abramov ©   (2008-02-10 18:11) [43]


> turbouser ©   (10.02.08 18:07) [42]

значит XE плохо изучал

это не из желания тебя обидеть. Просто любая фича, какая есть в FB, делается на XE либо так же, либо проще.


 
Черный Шаман   (2008-02-10 18:23) [44]


>
> > Черный Шаман   (10.02.08 17:56) [37]
>
> что значит тихо? не матюгаясь? можно


В тихом режиме, вместе с приложением без отдельных скринов инсталятора Oracle.


 
Petr V. Abramov ©   (2008-02-10 18:30) [45]


> Черный Шаман   (10.02.08 18:23) [44]

можно.
достаточно responce file сделать


 
Petr V. Abramov ©   (2008-02-10 18:54) [46]


> Черный Шаман   (10.02.08 18:23) [44]

хотя в большинстве случаев бессмысленно, так же, как для FB.
Все же сервер и база ставятся на сервер, а приложение - на клиента.
если приложение десктопное и однопользовательское - тогда действительно XE - из пушки по воробьям.


 
Черный Шаман   (2008-02-10 19:18) [47]


> Petr V. Abramov ©   (10.02.08 18:54) [46]
>
>
> > Черный Шаман   (10.02.08 18:23) [44]
>
> хотя в большинстве случаев бессмысленно, так же, как для
> FB.
> Все же сервер и база ставятся на сервер, а приложение -
> на клиента.
> если приложение десктопное и однопользовательское - тогда
> действительно XE - из пушки по воробьям.


Ну с Adaptive SQL Anywhere довольно удобно разрабатывать однопользовательские десктопные приложения, даже удобнее чем с FB, хоть на самом деле это мощный сервер, не особо уступающий Oracle.


 
md10   (2008-02-12 10:58) [48]

[28] - а с чего надо было начинать?


 
Sergey13 ©   (2008-02-12 11:09) [49]

> [48] md10   (12.02.08 10:58)

Вероятно с чтения хоть какой-то литературы по интересующему вопросу.


 
md10   (2008-02-12 11:12) [50]

Извини, я спрашиваю у автора сообщения номер 28. Мне интересно, что он имел ввиду.


 
Павел Калугин ©   (2008-02-12 11:17) [51]

> [48] md10   (12.02.08 10:58)

с проектирования самой БД
когда будет ясна ее логическая структура тогда и думать где реализовывать


 
md10   (2008-02-12 11:46) [52]

Ну я думаю, в первую очередь целесообразно начать проектирование с оценки количества записей. К тому же не требуется установления сложных взаимосвязей. Поэтому я начал именно от количества.


 
Style ©   (2008-02-12 11:50) [53]

Лучше ИМХО, пусть человек сразу делает на XE или на MSDE, опыт хоть получить который потом пригодится по жизни. FireBird - тоже хорошо, но скорее имеет смысл его использовать когда необходимо реализовать маааленькое клиентское приложение работающие с embeded сервером, а разрабатывать серверную часть на Oracle или MSSQL куда приятнее чем на FireBird.


 
Sergey13 ©   (2008-02-12 11:51) [54]

> [52] md10   (12.02.08 11:46)
> Ну я думаю, в первую очередь целесообразно начать проектирование
> с оценки количества записей.

Если количество записей менше 1000000, то им (количеством) можно вообще пренебречь и сосредоточиться именно на взаимосвязях.


 
_Mike_   (2008-02-12 12:02) [55]

Вот блин спор пошел. Вы конечно извините, но как можно проще на XE написать select * from TABLE ??? или там есть макрос для create table?? Что там проще может быть для 3-х табличек? Пакеты? Так нафига они нужны?


 
Павел Калугин ©   (2008-02-12 13:09) [56]

> [52] md10   (12.02.08 11:46)

Нет отнюдь.
для начала - логическая структура
Потом оценка количества данных и количества обращений к серверу
Записей может быть относительно немгого но при этом они постоянно нужны, скажем, 2000 человек. Тоже критерий влияяющий на выбор


 
ZeroDivide ©   (2008-02-12 15:53) [57]

FB для этой цели лучше. Весит меньше, меньше памяти кушает, более простой в установке и настройке.


 
oldman ©   (2008-02-12 15:56) [58]


> Задача такая - составить  базу данных преподавателей и студентов
> УЗ(1500 чел).


Мама родная!!!
Зачем огород городить???


 
Manic Mechanic ©   (2008-02-12 18:05) [59]

>> oldman ©   (12.02.08 15:56) [58]

+1


 
Anatoly Podgoretsky ©   (2008-02-12 21:24) [60]

> Sergey13  (12.02.2008 11:51:54)  [54]

Можно и миллионом пренебречь, если СУБД промышленная, а сразу сосредоточиться именно на взаимосвязях.


 
md10   (2008-02-12 21:30) [61]

For -54-  Да по-моему, там и связи практически отсутствуют, для каждого объекта просто накапливается история.


 
Черный Шаман   (2008-02-12 22:41) [62]


>
> Anatoly Podgoretsky ©   (12.02.08 21:24) [60]
>
> > Sergey13  (12.02.2008 11:51:54)  [54]
>
> Можно и миллионом пренебречь, если СУБД промышленная, а
> сразу сосредоточиться именно на взаимосвязях.


Ну FB 5 млн записей в таблице влегкую держит.


> md10   (12.02.08 21:30) [61]
>
> For -54-  Да по-моему, там и связи практически отсутствуют,
>  для каждого объекта просто накапливается история.


Связи есть везде и они или иерархия или сеть(или то и другое). Почитай Дейта.


 
Sergey13 ©   (2008-02-13 09:00) [63]

> [61] md10   (12.02.08 21:30)
> Да по-моему, там и связи практически отсутствуют, для каждого
> объекта просто накапливается история.

Это только по твоему они там отсутствуют. Это как суслик - ты его не видишь, а он есть. 8-)

> [62] Черный Шаман   (12.02.08 22:41)
> Ну FB 5 млн записей в таблице влегкую держит.

"Держать" не проблема, проблема быстро обрабатывать. 8-)
На приличных объемах обычно начинают вылезать ошибки проектирования, типа тормозящих индексов. Спасает только то, что ошибки (как правило) не фатальные, просто производительность страдает.


 
md10   (2008-02-15 12:09) [64]

Что будет с уникальной записью поля при удалении всей записи, например:
Уник поле      Имя
0001           Иванов
0002           Петров
0003          Сидоров
На эти записи ссылаются другие таблицы. И тут мы удаляем Петрова, таким образом получим
0001           Иванов
0003          Сидоров ? И потеряем ключев запись 0002 навсегда? Или они сместятся?
0001           Иванов
0002          Сидоров
?


 
Sergey13 ©   (2008-02-15 12:54) [65]

> [64] md10   (15.02.08 12:09)

Тебе все таки стОит почитать какой-нибудь букварик по теме.

Для того и делаются связи, что бы не дать тебе просто так удалить Петрова.


 
md10   (2008-02-15 13:23) [66]


> Тебе все таки стОит почитать какой-нибудь букварик по теме.

Да букварик не плохо бы - только ничего толкового найти не могу. В основном везде общее описание реляц БД, а теории проектирования всего такого нет. Во всяком случае я не нашел


 
Павел Калугин ©   (2008-02-15 13:25) [67]

md10   (15.02.08 12:09) [64]
1.читать Дейта
1.1. если не понятно читать что нибудь с названием "теория проектирования БД" и по прочтении перейти к п.1
при прочтении обратить внимание на такие термины
сущность, связь,  ключ, внешний ключ, нормализация

2. Внимательно, аккуратно построить модель сущностей-связей (она же ER-модель) предполагаемой БД.

3. на соновании логической модели построить физическую модель.


 
AndreyV ©   (2008-02-15 13:28) [68]

> [64] md10   (15.02.08 12:09)
> На эти записи ссылаются другие таблицы. И тут мы удаляем
> Петрова, таким образом получим
> 0003          Сидоров ? И потеряем ключев запись 0002 навсегда?
> Или они сместятся?


А тебе как надо?
0002 - жалко? Оно несёт смысловую нагрузку?
И что делать в связных таблицах с 0002?


 
Павел Калугин ©   (2008-02-15 13:34) [69]


> md10   (15.02.08 13:23) [66]

общее описание реляционных БД и есть тот самый букварик.


 
Sergey13 ©   (2008-02-15 13:36) [70]

> [66] md10   (15.02.08 13:23)
> Да букварик не плохо бы - только ничего толкового найти не могу.
Ты меня извини конечно, но человек спрашивающий

> И потеряем ключев запись 0002 навсегда? Или они сместятся?

вряд ли сможет объективно оценить толковость какого либо печатного издания.

> [67] Павел Калугин ©   (15.02.08 13:25)

Это ты сейчас с кем разговаривал? (с) анекдот
8-)


 
Павел Калугин ©   (2008-02-15 13:45) [71]


> Sergey13 ©   (15.02.08 13:36) [70]

наверное тихо сам с собою....



Страницы: 1 2 вся ветка

Форум: "Прочее";
Текущий архив: 2008.03.30;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.64 MB
Время: 0.046 c
2-1204373153
GHT
2008-03-01 15:05
2008.03.30
высота строк и перенос слов в DBGrid


4-1184506481
Deeman
2007-07-15 17:34
2008.03.30
Панель задач


15-1203066579
Jimmy
2008-02-15 12:09
2008.03.30
Описание скриптов для PhotoShop CS


15-1203476951
Slider007
2008-02-20 06:09
2008.03.30
С днем рождения ! 20 февраля 2008 среда


2-1204208944
Ultimate
2008-02-28 17:29
2008.03.30
Реестр





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский