![]() |
Модераторы: LSD |
![]() ![]() ![]() |
|
Loki_ |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 13.10.2003 Репутация: нет Всего: нет |
Не могу сообразить, какаие таблицы создать и как их связать, для категорий читателей и их характеристиками-атрибутами.
Библиотечный фонд города составляют библиотеки, расположенные на территории города. Каждая библиотека включает в себя абонементы и читальные залы. Пользователями библиотек являются различные категории читателей: студенты, научные работники, преподаватели, школьники, рабочие, пенсионеры и другие жители города. Каждая категория читателей может обладать непересекающимися характеристиками-атрибутами: для студентов это название учебного заведения, факультет, курс, номер группы, для научного работника - название организации, научная тема и т.д. P.S. Студент и школьник, поидее, должны находиться в одной таблице, но у школьника -номер школы, номер класса, а у студента -название учебного заведения, факультет, курс, номер группы и куда приписать всех остальных. В читательском билете, заполняется что-то одно либо Учиться: ЧГУ,1кур.,ИМФИ, либо Где и кем работает:___. Заранее благодарен!!! |
|||
|
||||
Wladislav |
|
|||
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 13.10.2003 Репутация: нет Всего: нет |
Ежели пользовать memo(blob)-поле, то в одном и том же поле можно держать характеристики разных категорий...
Но можно и в разных таблицах - зависит от того чем привык работать... |
|||
|
||||
Cashey |
|
|||
![]() Бессмертный ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3441 Регистрация: 13.11.2002 Где: в столице Репутация: нет Всего: 60 |
Так в чем проблема? Создаешь таблицу с полями: имя_читателя; его_категория (поле цифровое и создаешь для себя справочник категорий, если их много - создаешь справочнуб таблицу); другие поля с атрибутами.
-------------------- библия учит любить ближнего, а камасутра обучает как именно |
|||
|
||||
AntonSaburov |
|
|||
![]() Штурман ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5658 Регистрация: 2.7.2002 Где: Санкт-Петербург Репутация: нет Всего: 118 |
Есть два крайних варианта:
1. Сделать одну большую таблицу со всевозможными полями и сделать много view для просмотра нужных групп пользователей. Удобно, но таблица большая и некоторый SQL могут иметь ограничения на размер записи. Т.е. общая сумма длин полей не может превышать какой-то величины. Можно конечно для разных категорий иметь разную информацию в одних и тех же полях (Например для студента - номер группы, для школьника - класс), но думаю, что это может породить много проблем. 2. Сделать общую таблицу и потом делать дополнительные, которые будут иметь ссылку на основную. В основной само собой есть признак, какую таблицу (или даже таблицы) надо использовать. Можно тоже написать много view для удобства работы. Но делать сложные запросы будет сложнее - больше таблиц, связей и т.д. Может быть можно использовать какие-либо особенности используемого SQL-сервера. Или вообще использвать объектно-ориентированную СУБД. Если бы я этим занимался - то скорее всего выбрал бы вариант 2. Но это только IMHO. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Общие вопросы по базам данных" | |
|
Данный форум предназначен для обсуждения вопросов о базах данных не попадающих под тематику других форумов:
Данный форум не предназначен для:
Если вы не соблюдаете эти правила, не удивляйтесь потом не найдя свою тему/сообщение.
Полезные советы: Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, LSD, Zloxa. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | СУБД, общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |