Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Разное

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: База данных библиотеки
 
 автор: kasmanaft   (15.03.2009 в 10:16)   письмо автору
 
 

Приветствую! =Ъ

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

Например. Одним из видов запросов к этой БД будет "получение количества экземпляров данной книги, всех изданий". Ясно, что для каждого издания книги в некоторой таблице будет своя запись. Но чтобы было меньше избыточности (да и чтобы однозначно можно было судить, что 2 издания одной книги - это есть издания _одной_ книги), между ними нужно найти что-то общее -- Название, например. Так понимаю, новое издание не может обзавестись новым названием? Наверное, это будет уже первое издание другой книги ^_^ .
Или всё-таки можно, скажем, добавив в книгу информации по PHP5, переименовать её из "Самоучителя по PHP4" в "Самоучитель по PHP5" и сказать, что это второе, дополненное, издание? :)

Остаётся ли что-то общее между разными изданиями?

  Ответить  
 
 автор: cheops   (15.03.2009 в 12:50)   письмо автору
 
   для: kasmanaft   (15.03.2009 в 10:16)
 

Обычно явно указывается переработано издание или нет (впрочем это не жесткое правило). Для группировки разных изданий, лучше завести отдельную таблицу.

  Ответить  
 
 автор: kasmanaft   (15.03.2009 в 13:32)   письмо автору
 
   для: cheops   (15.03.2009 в 12:50)
 

Пока у меня 2 таблицы: книги и издания.

У каждого издания свои создатели, тираж, число страниц и т.д. Родителем каждого из них является книга из одноименной таблицы (которую характеризует название (м.б. оригинальное), библиотечный код, что-то может быть еще). Так, по ID из таблицы книг можно найти все её издания. (Главный вопрос - что хранить в таблице книг?)


Или же указывать все данные в таблице изданий, а книги - только ID, который будет вторичным ключем издания? Но как-то это неестественно..


Хм.. А может быть оставить только одну таблицу изданий и добавить в нее рекурсивный ключ? При этом указывая вид издания (оригинал, перевод, дополненное...). Но это, наверное, сложно в обслуживании..

  Ответить  
 
 автор: DEM   (15.03.2009 в 13:38)   письмо автору
 
   для: kasmanaft   (15.03.2009 в 13:32)
 

Хм.. А может быть оставить только одну таблицу изданий и добавить в нее рекурсивный ключ? При этом указывая вид издания (оригинал, перевод, дополненное...). Но это, наверное, сложно в обслуживании..

А мне кажется, что этот способ более рационален .

  Ответить  
 
 автор: kasmanaft   (15.03.2009 в 18:33)   письмо автору
 
   для: DEM   (15.03.2009 в 13:38)
 

Мне тоже он больше нравится :). Покажу модель преподу, может и ему понравится ^_^
Ну а ежели нет, приду расспрашивать дальше..

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования