Я создал действительно простой сайт php / mysql для архитектора, который использует одну таблицу 'projects'.
На сайте представлены различные проекты, над которыми он работал.
Каждый проект содержал один фрагмент текста и одну серию изображений.
Таблица исходных проектов (создать синтаксис):
CREATE TABLE `projects` (
`project_id` int(11) NOT NULL auto_increment,
`project_name` text,
`project_text` text,
`image_filenames` text,
`image_folder` text,
`project_pdf` text,
PRIMARY KEY (`project_id`)
) ENGINE=MyISAM AUTO_INCREMENT=8 DEFAULT CHARSET=latin1;
Клиенту сейчас требуется следующее, и я не уверен, как обращаться с расширениями в моей БД.
Я подозреваю, что мне понадобится дополнительная таблица.
У каждого проекта теперь есть «страницы».
Страницы либо содержат ...
- Одно изображение
- Один «кусок» текста
- Одно изображение и один фрагмент текста.
Каждая страница может использовать один из трех макетов.
Поскольку каждый проект в настоящее время содержит не более 4 фрагментов текста (очень рискованное предположение), я расширил исходную таблицу, чтобы вместить все.
Попытка новой таблицы проектов (создать синтаксис):
CREATE TABLE `projects` (
`project_id` int(11) NOT NULL AUTO_INCREMENT,
`project_name` text,
`project_pdf` text,
`project_image_folder` text,
`project_img_filenames` text,
`pages_with_text` text,
`pages_without_img` text,
`pages_layout_type` text,
`pages_title` text,
`page_text_a` text,
`page_text_b` text,
`page_text_c` text,
`page_text_d` text,
PRIMARY KEY (`project_id`)
) ENGINE=MyISAM AUTO_INCREMENT=8 DEFAULT CHARSET=latin1;
Чтобы узнать больше о структурировании таблиц MYSQL, я только что прочитал введение в нормализацию и Простое руководство по пяти нормальным формам в теории реляционных баз данных . Я буду продолжать читать!
Заранее спасибо