Базы данных MySQL

Автор: Пользователь скрыл имя, 06 Декабря 2012 в 09:45, курсовая работа

Краткое описание

Пояснительная записка к курсовой работе «Базы данных MySQL»

Оглавление

Содержание:
Установка сервера MySQL.
Настройка и запуск сервера MySQL.
Нормализация объектов в MySQL.
Первая нормальная форма.
Вторая нормальная форма.
Третья нормальная форма.
Идентификация и типы данных в MySQL.
Идентификация записей в СУБД.
Типы данных в MySQL.
Движки MySQL, как технология хранения информации.
Создание базы данных MySQL.
Перед стартом.
Подключение к серверу.
Создание базы данных.
Удаление базы данных.
Выбор рабочей БД.
Создание таблиц в БД MySQL.
Создание таблиц.
Изменение структуры таблицы.
Клонирование структуры таблицы.
Удаление таблицы.
Добавление записей в таблицу БД .
Выполнение запросов.
Литература

Файлы: 1 файл

Базы данных.docx

— 2.27 Мб (Скачать)

Нижегородский Технический Университет  им. Р.Е. Алексеева

 

 

 

 

 

Пояснительная записка к курсовой работе

«Базы данных MySQL»

Дисциплина: «Информационные технологии»

 

 

 

Выполнили:

Студнеты группы 09-СБК

Игнатьев А. А.

Зуйков Д.

Проверила:

Федюшкина Т.

 

 

 

 

 

Н. Ногород 2011г.

Содержание:

  1. Установка сервера MySQL.
  2. Настройка и запуск сервера MySQL.
  3. Нормализация объектов в MySQL.
    1. Первая нормальная форма.
    2. Вторая нормальная форма.
    3. Третья нормальная форма.
  4. Идентификация и типы данных в MySQL.
    1. Идентификация записей в СУБД.
    2. Типы данных в MySQL.
  5. Движки MySQL, как технология хранения информации.
  6. Создание базы данных MySQL.
    1. Перед стартом.
    2. Подключение к серверу.
    3. Создание базы данных.
    4. Удаление базы данных.
    5. Выбор рабочей БД.
  7. Создание таблиц в БД MySQL.
    1. Создание таблиц.
    2. Изменение структуры таблицы.
    3. Клонирование структуры таблицы.
    4. Удаление таблицы.
  8. Добавление записей в таблицу БД .
  9. Выполнение запросов.
  10. Литература

 

 

 

       

 

 

 

 

  1. Установка сервера MySQL

База данных служит для  хранения информации на сервере и в любых других структурах и отраслях, где возможен какой-либо свод однородной и однотипной информации.

Последнюю версию MySQL сервера можно скачать на официальном сайте разработчика: mysql.com. Дистрибутив поставляется в стандартном инсталляционном пакете MSI.

Шаг 1: После того, как Вы скачали и запустили инсталлятор, появится окно приветствия. Нажимаем Next

Шаг 2: Устанавливаем флажок «I accept the terms in the license agreement» - Я соглашаюсь с представленным лицензионным соглашением. Нажимаем Next.

Шаг 3: Инсталлятор предлагает выбрать тип установки. Для детальной настройки выбираем “Custom”. Нажимаем Next

Шаг 4: Указываем путь установки в папку C:\SERVER\MySQL. Далее выбираем в иерархическом списке пункт Server data files и ему тоже указываем путь установки C:\SERVER\MySQL. Нажимаем Next

Шаг 5: Все готово к установке. Нажимаем Install

Шаг 6: Всё, сервер установлен. Флажок «Launch the MySQL instance Cofiguration Wizard» переводится как «Запустить мастер настройки сервера»

 

 

 

 

 

 

 

 

 

 

 

 

  1. Настройка и запуск сервера MySQL

Шаг 1: После запуска “MySQL Server Instance Config Wizard”, появится окно приветствия. Нажимаем Next

 

Шаг 2: Далее мастер предлагает выбрать тип настройки, выбираем “Detailed Configuration” – Детальная натсройка. Нажимаем Next

Шаг 3: На текущем этапе, помощник спрашивает, в каком объеме будут использоваться ресурсы машины на сервер.

► Developer Machine - Машина разработчика (минимальный затрат ресурсов).

► Server Machine - Серверная машина (средний затрат ресурсов).

► Dedicated MySQL Server Machine - Выделенный сервер (максимальный затрат ресурсов).

Выбираем "Developer Machine". Нажимаем Next.

 

Шаг 4: На текущем этапе, мастер просит указать, какие движки баз данных следует установить.

► Multifunctional Database - Все движки.

► Transactional Database Only - Только транзакционные движки (например InnoDB).

► Non-Transactional Database Only - Только не транзакционные движки (например MyISAM).

Выберем "Multifunctional Database". Нажимаем Next.

Шаг 5: Мастер просит указать путь хранения самих данных базы, для движка InnoDB. На больших серверах, как правило принято сами данные хранить отдельно от сервера.

Т.к. для разработки веб  приложений не требуется большие  базы данных, можно хранить все  в папке MySQL (и данные и сам сервер).

Выбираем “Installation Path” – Инсталляционный путь. Нажимаем Next

Шаг 6: Выбираем тип соединения клиентов с сервером баз данных:

► Decision Support (DSS)/OLAP - Аналитическая обработка запросов в реальном времени.

► Online Transaction Proccessing OLTP - Обработка транзакций в реальном времени.

► Manual Setting - Указать количество соединений.

OLAP рассчитан на сложные запросы по работе с большим объемом информации, такие операции могут занимать много времени и затрачивать много ресурсов компьютера. В то время как OLTP рассчитан на быструю вставку информации в базу данных и затрачивает минимум ресурсов и идеально подходит для web-разработчиков. Выбираем OLTP. Жмем Next.

 

Шаг 7: “Enable TCP\IP Networking” позволяет осуществлять соединение с БД по протоколу TCP\IP. Ставим флажок «Add firewall exception for this port» - Добавление порта как исключение для фаерволла Windows. Стандартный порт 3306.

«Enable Strick Mode» – Позволяет  установить жесткий контроль к синтаксису SQL. Ставим флажки и нажимаем Next.

 

Шаг 8: Выбираем кодировку, в которой сервер будет хранить данные:

► Standart Character Set - Стандартная кодировка latin1.

► Best Support For Multilingualism - Наилучшая многоязыковая поддержка UTF-8.

► Manual Selected Default Character Set - Самостоятельно указать кодировку.

Если выбрать 1-й пункт, то сервер сможет хранить у себя только латиницу (английский, французский, немецкий и т.д.), русские символы при неправильной настройке кодировки соединения, могут выводиться как "??????". 3-й пункт позволяет выбрать самостоятельно кодировку. Во 2-м пункте, сервер будет настроен на кодировку UTF-8, которая поддерживает абсолютно все языки мира, выбираем 2-й пункт и нажимаем Next.

 

Шаг 9: Ставим флажок «Install As Windows Service» - Установить службу Windows. Имя службы указываем например «MySQL». Если установлен флажок «Запускать сервер автоматически», то сервер MySQL будет запускаться при загрузке Windows (Изменить режим запуска можно в панели управления в «Службах»). Ставим флажок «include Bin Directory in Windows PATH», это позволит выполнять команды к серверу прямо из командной строки Windows.

 

Шаг 10: Устанавливаем пароль для главного пользователя. Флажок «Enable root access from remote machines» - «включить доступ гланого пользователя с удаленных машин» устанавливать не стоит, т.к. это противоречит политике безопастности. Флажок «Create An Anoymous Account» - «Создать анонимный аккаунт» так же не устанавливаем, т.к. не это не нужно. Нажимаем Next.

 

Шаг 11: Все готово для установки настроек. Нажимаем Exeсute

 

Шаг 12: Готово. Конфигурационный файл создан (в пункте “Write configuration file” указан его путь). Сервер успешно запущен. Настройки безопасности успешно применены

Сервер  MySQL может быть запущен и остановлен через командную строку Windows.

Для запуска команда net start mysql

Для остановки - net stop mysql

 

  1. Нормализация объектов в MySQL

Нормализация БД - один из важнейших этапов при проектировании базы данных. Нормализация - это проектирование базы данных так, чтобы она была компактной и не несла логическую избыточность. Это своего рода правила проектировки БД. Всего несколько разновидностей нормализации, так называемые нормальные формы, их порядка ~6-7. Все они идут в порядке усложнения от простого. Все рассматривать не будем, т.к. для проектировки приложений достаточно, чтобы база данных отвечала второй нормальной форме, максимум третьей.

3.1 Первая нормальная форма:

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

Т.е.: одно поле - одно значение.

Пример таблицы, которая не атамарна, а значит и не отвечает правилам первой нормальной формы:

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

2. Если у одного товара  несколько складов, то для такого  случая аналогично должна быть  каждая запись. С одним складом  и с другим.

3. Часто операторы БД  пишут цену с пробелом в качестве разделения числового разряда. Это не правильно, потому что для базы это совершенно два разных значения, причем если поле будет с типом int, то база выдаст ошибку.

А вот пример той же таблицы, которая атомарна, а значит и отвечает правилам первой нормальной формы:

 

3.2 Вторая нормальная форма:

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

Вот пример таблицы, вышеупомянутой таблицы, находящийся во второй нормальной форме:

1. Таким образом, в таблице  для каждого товара мы пишем не названия склада, а указываем его первичный ключ именуемый как ID. А сами названия складов выносим в отдельную таблицу.

2. Исходя из пункта  №1 можно сделать вывод, что  наличие первичного ключа, у  всех таблиц обязательно.

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

 
3.3 Третья нормальная форма:

Объект базы данных находится  в третьей нормальной форме тогда, когда он находится во второй нормальной форме и отсутствуют транзитивные зависимости не ключевых объектов от ключевых.  Транзитивная зависимость - это очевидная зависимость между полями. Если поле  А равно "чему то", то поле Б обязательно будет равно "вот этому" и никак иначе. А если поле  Б равно "вот этому", то тогда поле "С" будет равно "другому" и никак иначе. Вот такой зависимости между объектами быть не должно.

Предположим, что в таблице "Склады" добавилась информация об их адресах (добавлены столбцы "Город" и "Почтовый индекс"):

В данном примере есть транзитивная зависимость, а именно это поля "Город" и "Индекс". Если индекс равен 630423, то мы уже знаем, что это явно Новосибирск  и никак иначе, других городов  с таким индексом нет. Вот это  и есть транзитивная зависимость  от которой необходимо избавляться, путем разбиения ее на отдельные  таблицы.

В конечном итоге, наша таблица  складов разбилась на 2 таблицы и полностью отвечает правилам третьей нормальной формы:

В таблице "Индексы" в качестве первичного ключа используется не ID (суррогатный ключ генерируемый самой системой), а сам номер индекса т.к. он уникален, не может повторяться и не изменяется с течением времени.

  1. Идентификация и Типизация объектов в MySQL

4.1 Идентификация записей в СУБД

Например, у нас есть таблица  с сотрудниками, и в этой таблице  есть несколько записей. Условно  предположим, что на предприятии  работают два сотрудника с фамилиями Петров. Бухгалтер, для начисления зарплаты должен в некой программе выбрать Петрова, и начислить ему з/п. Как сиcтема узнает какому именно Петрову необходимо произвести зачисление? Вот для этого и существует понятие идентификации записи.

В качестве идентификатора записи в таблице, может выступать любое поле однозначно определяющее эту запись и не изменяться с течением времени. Для того же сотрудника таковым полем может являться паспортные данные, ИНН, адрес прописки, номер сотового телефона и пр. Т.е. все то, что уникальное и не повторяется дважды. Такое поле будет называться Первичный ключ (PRIMARY KEY). Как только поле перестает быть уникальным - оно также и перестает быть ключевым и по такому полю идентификация записи невозможна.

Также существует понятие Составной ключ. Это парный ключ, а точнее их комбинация. Например, ФИО человека и его номер паспорта - уникальная комбинация, номер телефона и адрес проживания и т.д.

При разработке любого проекта, в 99% случаев, в качестве первичного ключа используют Суррогатный ключ - ключ, который генерирует сама база данных. Чаще всего - это простые числа от 1 до n (ID). Для большинства задач этого вполне достаточно.

 
4.2 Типы данных в MySQL

Для каждого поля, в котором  будет храниться информация, при его создании, необходимо обязательно указывать его тип данных. Их много: числовые, дробные, строковые, даты, бинарные и пр. Числовые типы данных могут иметь дополнительный параметр UNSIGNED (беззнаковое, только положительные). Рассмотрим наиболее часто используемые при проектировки БД:

 

 

Числовые

TINYINT - Целое. Занимает 1 байт. Хранит значения от -128 до 127.

Информация о работе Базы данных MySQL