Православный взгляд на ИТ

Вопрос по организации БД
StanB., православный из РПЦ - 23:24 28.09.2004
У меня возникли некот. трудности с тем, какие поля необходимы базе данных для представления книг в библиотеке. Положим, у меня есть раздел "Книги", в нем подразделы, и каждая книга разделена на отдельные главы. Как это лучше всего представить в БД? Интересно, как хранятся книги в здешней библиотеке?

                


Re: Вопрос по организации БД
Александр Иванов, православный христианин, РПЦ - 08:35 29.09.2004
Формат таблицы с книгами нашей библиотеки

CREATE TABLE `books` (
`Id` mediumint(9) unsigned NOT NULL auto_increment,
`Author` smallint(6) unsigned default NULL,
`Title` varchar(255) binary NOT NULL default '',
`vol` varchar(255) binary NOT NULL default '',
`vol_id` mediumint(8) unsigned NOT NULL default '0',
`Filename` varchar(20) NOT NULL default '',
`Dt` datetime default NULL,
`Hits` int(11) unsigned NOT NULL default '0',
`Info` text NOT NULL,
`topic` set('1','2','3','4','5','6','7','8','9','10','11','12','13','14','15','16') NOT NULL default '',
PRIMARY KEY (`Id`),
UNIQUE KEY `Filename` (`Filename`),
UNIQUE KEY `Author` (`Author`,`vol`(200),`Title`),
KEY `Title` (`Title`),
KEY `Hits` (`Hits`),
KEY `Dt` (`Dt`)
) TYPE=MyISAM AUTO_INCREMENT=804 ;


vol и vol_id - это название и id mysql-записи тома или книги, включающей этот текст.
topic - разделы библиотеки, к которым относится этот текст.

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