ТОП 10:

Создание инфологической модели



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

Версия концептуальной модели, которая может быть обеспечена конкретной СУБД, называется логической моделью. Процесс построения логической модели базы данных должен опираться на определённую модель данных (реляционная, сетевая, иерархическая), которая определяется типом предполагаемой для реализации информационной системы СУБД. В нашем случае база данных создается создаётся в среде MySQL и будет представлять собой реляционную базу данных.

В реляционных моделях данных объекты и взаимосвязи между ними представляются с помощью таблиц. Каждая таблица представляет один объект и состоит из строк и столбцов. Таблица в реляционной модели называется отношением.

Атрибут (поле) - любой столбец в таблице.

Домен - множество значений, которые может принимать атрибут.

Кортежи (записи) - строки таблицы.

Таблицы связаны между собой при помощи ключевых полей.

Ключ - это поле, позволяющее однозначно идентифицировать запись в таблице. Ключ может быть простым (состоит из одного поля) или составным (из нескольких полей).

В реляционных базах данных логическое проектирование приводит к разработке схемы данных, которая представлена на рисунке 1.

Выбор технчиеских и программных средств реализации БД

MySQL представляет собой систему управления базами данных.

Базой данных называют структурированный набор данных. Это может быть чем угодно: от простого перечня покупок до галереи изображений. Чтобы добавлять, обращаться и обрабатывать данные, сохраненные в компьютерной базе данных, Вы нуждаетесь в системе управления базы данных, типа MySQL. Так как компьютеры очень хороши при обработке больших количеств данных, базы данных играют центральную роль в вычислениях, как автономные утилиты, или как части других пакетов прикладных программ.

MySQL является реляционной СУБД.

Реляционная база данных сохраняет данные в отдельных таблицах. Это добавляет быстродействие и гибкость. Таблицы связаны определенными отношениями, делающими возможным объединить данные из нескольких таблиц в одном запросе. SQL-часть MySQL ориентирована на Structured Query Language, наиболее общий стандартизированный язык, используемый, чтобы обратиться к компьютерным базам данных.

 

PHP – это широко используемый язык сценариев общего назначения с открытым исходным кодом.

 

Говоря проще, PHP это язык программирования, специально разработанный для написания web-приложений (сценариев), исполняющихся на Web-сервере.

 

Аббревиатура PHP означает “Hypertext Preprocessor (Препроцессор Гипертекста)". Синтаксис языка берет начало из C, Java и Perl. PHP достаточно прост для изучения. Преимуществом PHP является предоставление web-разработчикам возможности быстрого создания динамически генерируемых web-страниц. Подробнее о преимуществах PHP можно узнать здесь.

 

Важным преимуществом языка PHP перед такими языками, как языков Perl и C заключается в возможности создания HTML документов с внедренными командами PHP. Подробнее об этой возможность смотрите здесь.

 

Значительным отличием PHP от какого-либо кода, выполняющегося на стороне клиента, например, JavaScript, является то, что PHP-скрипты выполняются на стороне сервера. Вы даже можете сконфигурировать свой сервер таким образом, чтобы HTML-файлы обрабатывались процессором PHP, так что клиенты даже не смогут узнать, получают ли они обычный HTML-файл или результат выполнения скрипта.

 

PHP позволяет создавать качественные Web-приложения за очень короткие сроки, получая продукты, легко модифицируемые и поддерживаемые в будущем.

 

PHP прост для освоения, и вместе с тем способен удовлетворить запросы профессиональных программистов.

 

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

 

Язык PHP постоянно совершенствуется, и ему наверняка обеспечено долгое доминирование в области языков web -программирования, по крайней мере, в ближайшее время.

Требования к аппаратному обеспеченю

Минимальные требования к серверу: 1 компьютер с процессором Pentium II 233 МГц и выше, 128 Мб оперативной памяти.

Для работы системы необходимо следующее предустановленное программное обеспечение: Apache Web Server , PHP 4.3.x, MySql , на платформе FreeBSD или Linux.

Существует также возможность инсталляции системы на платформе Windows. При этом требования к предустановленному программному обеспечению остаются прежними.

Для работы с клиентской частью системы требуется компьютер, подключенный по протоколу TCP/IP к сети, в которой находится сервер с установленнойCimWebCenter.

Минимальные требования к компьютеру клиента: Pentium 200 МГц и выше, 32 Мб оперативной памяти. Работа с системой осуществляется посредством браузера Internet Explorer версии 6.0.

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

 

Где взять?

Apache http://www.apache.org
MySQL http://www.mysql.net
PHP http://www.php.net

 

Конструкторская часть

Основные этапы разработки
Разработка базы данных состоит из следующих пунктов:
a) Создание таблиц и их заполнение;
b) Создание приложения в PHP;

c) Тестирование разработанного продукта.

Создание таблиц

Таблица - это набор данных по конкретной теме, такой как кленты или производители. Использование отдельной таблицы для каждой темы означает, что соответствующие данные сохранены только один раз, что делает базу данных более эффективной и уменьшает число ошибок при вводе данных. Создание таблиц заключается в задании её полей и назначении их свойств.

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

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

Первичный ключ используется для связывания таблицы с вторичными ключами в других таблицах. Это одно или несколько полей (столбцов), комбинация значений которых однозначно определяет каждую запись в таблице. Первичный ключ не допускает значений 0 и всегда должен иметь уникальный индекс. Связь между таблицами устанавливает отношения между совпадающими значениями в ключевых полях, обычно между полями, имеющими одинаковые имена в обеих таблицах. В большинстве случаев ключевым полем одной таблицы, являющимся уникальным идентификатором каждой записи, связывается внешний ключ другой таблицы.

Запросы использованные при создании и заполнении таблиц

 

База данных: `b4_13964520_book`

--

 

-- --------------------------------------------------------

 

--

-- Структура таблицы `Autors`

--

 

CREATE TABLE IF NOT EXISTS `Autors` (

`ID` int(11) NOT NULL,

`FirstName` char(20) CHARACTER SET utf8 DEFAULT NULL,

`LastName` char(40) CHARACTER SET utf8 DEFAULT NULL,

`SurName` char(40) CHARACTER SET utf8 DEFAULT NULL,

`PubHouseID` int(40) DEFAULT NULL,

`Age` int(11) DEFAULT NULL,

`Sex` char(1) CHARACTER SET utf8 DEFAULT NULL,

PRIMARY KEY (`ID`),

KEY `PubHouseID` (`PubHouseID`)

) ENGINE=MyISAM DEFAULT CHARSET=latin1;

 

--

-- Дамп данных таблицы `Autors`

--

 

INSERT INTO `Autors` (`ID`, `FirstName`, `LastName`, `SurName`, `PubHouseID`, `Age`, `Sex`) VALUES

(1, 'Елена', 'Грушко', 'Арсеньевна', 1, 61, 'ж'),

(2, 'Скотт', 'Орсон', 'Кард', 2, 62, 'м'),

(3, 'Христиан', 'Ганс', 'Андерсен', 3, 138, 'м');

 

-- --------------------------------------------------------

 

--

-- Структура таблицы `Books`

--

 

CREATE TABLE IF NOT EXISTS `Books` (

`ID` int(11) NOT NULL,

`Autor_ID` int(20) DEFAULT NULL,

`Title` char(40) CHARACTER SET utf8 DEFAULT NULL,

`PubHouseName` char(40) CHARACTER SET utf8 DEFAULT NULL,

`PubYear` int(11) DEFAULT NULL,

`Genre` char(40) CHARACTER SET utf8 DEFAULT NULL,

`Price` double DEFAULT NULL,

`FIO` char(50)CHARACTER SET utf8 DEFAULT NULL,

 

 

KEY `Title` (`Title`),

KEY `Autor_ID` (`Autor_ID`),

KEY `PubHouseName` (`PubHouseName`)

) ENGINE=MyISAM DEFAULT CHARSET=latin1;

 

--

-- Дамп данных таблицы `Books`

--

 

INSERT INTO `Books` (`ID`, `Autor_ID`, `Title`, `PubHouseName`, `PubYear`, `Genre`, `Price`) VALUES

(2, 2, 'Игра Эндера', 'Азбука-Аттикус', 2013, 'Фантастика. Фэнтези. Мистика', 279),

(1, 1, 'Опальная красавица', 'Эксмо', 2006, 'Романы', 400),

(3, 3, 'Снежная Королева', 'Речь', 1987, 'Сказки', 179);

 

-- --------------------------------------------------------

 

--

-- Структура таблицы `PubHouse`

--

 

CREATE TABLE IF NOT EXISTS `PubHouse` (

`PHName` char(40) CHARACTER SET utf8 NOT NULL DEFAULT '',

`Country` char(40) CHARACTER SET utf8 DEFAULT NULL,

`City` char(40) CHARACTER SET utf8 DEFAULT NULL,

`Adress` char(40) CHARACTER SET utf8 DEFAULT NULL,

PRIMARY KEY (`PHName`)

) ENGINE=MyISAM DEFAULT CHARSET=latin1;

 

--

-- Дамп данных таблицы `PubHouse`

--

 

INSERT INTO `PubHouse` (`PHName`, `Country`, `City`, `Adress`) VALUES

('Эксмо', 'Россия', 'Москва', 'ул. Зорге, д.1.'),

('Азбука-Аттикус', 'Россия', 'Санкт-Петербург', 'ул. Набережная Робеспьера, 12'),

('Речь', 'Россия', 'Санкт-Петербург', '12 линия В.О., д. 13/А, к.702');

 

-- --------------------------------------------------------

 

--

-- Структура таблицы `Titles`

--

 

CREATE TABLE IF NOT EXISTS `Titles` (

`ID` int(11) NOT NULL,

`Title` char(20) CHARACTER SET utf8 NOT NULL,

`LangRu` char(40) CHARACTER SET utf8 NOT NULL,

`LangKz` char(40) CHARACTER SET utf8 NOT NULL,

`LangEn` char(40) CHARACTER SET utf8 NOT NULL,

PRIMARY KEY (`Title`)

) ENGINE=MyISAM DEFAULT CHARSET=latin1;

 

--

-- Дамп данных таблицы `Titles`

--

 

INSERT INTO `Titles` (`ID`, `Title`, `LangRu`, `LangKz`, `LangEn`) VALUES

(1, 'Игра Эндера', 'Игра Эндера', 'Эндердің ойыны', 'Ender''s Game'),

(2, 'Опальная красавица', 'Опальная красавица', 'Сырлы шырайлым', 'Disgraced beauty'),

(3, 'Снежная Королева', 'Снежная Королева', 'Қарлы Ханым', 'The Snow Queen');

Рис.2 (Список Таблиц)

 

Рис.3 (Таблица Autors)

 

Рис.4 (Таблица PubHouse)

 

Рис.5 (Таблица Titles)

 

Рис.6 (Таблица Books)

Написание приложения на PHP

Пользовательское меню

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Курсовая работа</title>

<meta name="keywords" content="corner template, html css layout, one page, 5 sections, templatemo" />

<meta name="description" content="Курсовая работа" />

<link href="style.css" rel="stylesheet" type="text/css" />

 

</head>

<body>

 

<span id="top"></span>

<div id="templatemo_wrapper">

<div id="templatmeo_header">

<div id="site_title">

<h1><a href="http://brendykz.idhost.kz/">База данных Книг</a></h1>

</div>

<div id="templatemo_menu">

<ul>

<li><a href="index.php">Главная</a></li>

<li><a href="booksdata.php">Книги</a></li>

<li><a href="autorsdata.php">Авторы</a></li>

<li class="last"><a href="pubhousedata.php">Издательства</a></li>

</ul>

</div> <!-- end of templatemo_menu -->

</div> <!-- end of header -->

 

<div id="templatemo_main">

 

<div id="home" class="content_top"></div>

<div class="content_box">

<div class="content_title content_home"></div>

 

<h2>Главная страница</h2>

<div class="cleaner h30"></div>

 

 

<p>Курсовая работа<p>

Выполнил: Садуакасов Е.<p>

 

<table align=center>

<tr><td colspan=3 align=center><b>М Е Н Ю</b></td></tr>

<tr bgcolor=yellow><td>№</td><td width=100>Действия</td><td align=center>Описание</td></tr>

<tr><td>1</td><td><a href=add.html>Добавить</a></td><td>Добавить в таблицу Книги</td></tr>

<tr><td>1</td><td><a href=booksdata.php>Просмотреть</a></td><td>Просмотреть таблицу Книги</td></tr>

<tr><td>2</td><td><a href=pubhousedata.php>Просмотреть</a></td><td>Просмотреть таблицу Издательства</td></tr>

<tr><td>3</td><td><a href=autorsdata.php>Просмотреть</a></td><td>Просмотреть таблицу Авторы</td></tr>

<tr><td>1</td><td><a href=booksselect.html>Запрос</a></td><td>Поиск информации о Книгах</td></tr>

<tr><td>2</td><td><a href=pubhouseselect.html>Запрос</a></td><td>Поиск информации о Издательствах</td></tr>

<tr><td>3</td><td><a href=autorsselect.html>Запрос</a></td><td>Поиск информации об Авторах</td></tr>

<tr><td colspan=3><hr color=red></td></tr>

</table>

<div class="cleaner"></div>

 

</div>

 

 

<div id="templatemo_footer">

 

Copyright © 2013 | WEB Приложение для базы данных

 

<div class="cleaner"></div>

</div>

 

</div> <!-- end of warpper -->

 

</body>

</html>

 







Последнее изменение этой страницы: 2016-04-19; Нарушение авторского права страницы

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 34.201.9.19 (0.024 с.)