Создание базы данных

Программные решения для бизнеса

База данных позволяет хранить большое количество информации в одном месте. Качественно спроектированная база станет опорой для дальнейшей работы с данными, а кроме того, значительно облегчит ваш труд.
Глоссарий
Для успешного освоения материала рекомендуем вам изучить следующие понятия:
База данных
БД, DB (Database). Организованная структура, предназначенная для хранения, изменения и обработки взаимосвязанной информации, преимущественно больших объемов
Скрипт
Script. Отдельные последовательности действий, созданные для автоматического выполнения задачи
Cистема управления базами данных
СУБД, Database Management System. Ком­плекс про­грамм, по­зво­ляю­щих соз­дать ба­зу дан­ных (БД) и ма­ни­пу­ли­ро­вать дан­ны­ми (встав­лять, об­нов­лять, уда­лять и вы­би­рать)
Первичный ключ
PK, Primary Key. Минимальный набор атрибутов, совокупность значений которых однозначно определяет кортеж в отношении
Внешний ключ
FK, Foreign Key. Столбец или комбинация столбцов, значения которых соответствуют Первичному ключу в другой таблице
Видеолекция
Конспект

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

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

При этом, вся информация не хранится в каком-то обобщенном виде, а разбивается на таблицы, каждая из которых отвечает за определенный объект предметной области. Чем больше данные обособляются в таблицы, тем выше вероятность избежать дублирования информации и захламления базы данных, а также сокращает время и ресурсы на поиск необходимых данных
MS SQL Management Studio
ПО для управления базами данных. Основные элементы интерфейса.
Создание новой базы данных
1. Запускаем MS SQL Management Studio
А) Подключаемся к серверу:

Server Name: localhost\SQLEXPRESS
Authentification: Windows Authentification
Б) Жмем Connect. Открывается список баз данных сервера
2. Создаем новую базу данных
3. Определяем основные сущности и создаем таблицы.
На основании предоставленной диаграммы ресурсов добавим таблицы в базу данных, разделив информацию на 2 блока: туры (туры, типы) и отели (отели, отзывы, изображения, страны)
Создаем таблицы.
Существует несколько способов:

А) дизайнер таблиц
Б) диаграмма БД
Создаем таблицы туров (Tour), отелей (Hotel), изображений (Hotelimage), отзывов (HotelComment), стран (Country), типов тура (Type)
4. Добавляем поля в таблицы:
А) Таблица Tour
  • Код тура (id)
  • Количество билетов (TicketCount)
  • Название (Name)
  • Описание (Description)
  • Изображение (ImagePreview)
  • Стоимость (Price)
  • Актуальность (isActual)
Б) Таблица Hotel
  • id
  • Name
  • CountOfStars
  • CountryCode

В) Таблица Hotelimage
  • id
  • Hotelid
  • ImageSource
Г) Таблица HotelComment
  • id
  • Hotelid
  • Text
  • Author
  • CreationDate

Д) Таблица Country
  • Code
  • Name
Е) Таблица Type
  • Name
  • Description
5. Расставляем первичные ключи
Важно
Первичный ключ — поле, которое уникально характеризует запись (строку) в таблице
6. Устанавливаем типы данных
  • название отеля — текстовый тип данных
  • количество звезд — числовой
  • дата создания отзыва — тип date
  • и т. д. (на скриншоте)
7. Устанавливаем обязательность или необязательность поля.
В третьем столбце есть маркер, отвечающий за обязательность поля. В случае, если мы отметим его галочкой, поле будет необязательным при заполнении в таблицу
8. Устанавливаем связи между таблицами

А) один-ко-многим
Чтобы связать таблицу стран и отелей, в таблицу Hotel необходимо добавить специальное поле — внешний ключ (в нашем случае это CountryCode), который по типу совпадает с тем, что является первичным ключом в таблице Country.
Далее от первичного ключа таблицы Country ведется связь к внешнему ключу таблицы
Б) многие-ко-многим

На диаграмме ресурсов между таблицами туров и типов была связь «многие-ко-многим», которую нам необходимо реализовать в базе данных. Для этого нужно создать еще одну таблицу (назовем ее TypeOfTour) и создадим поля — первичные ключи из других таблиц. В данной таблице оба поля будут являться ключевыми
9. Добавляем данные. Настраиваем автоинкременты
Для того, чтобы не вести учет количества порядковых номеров, в настройках поля можно установить автоматическое определение значения поля при добавлении записи. Например, если в таблице есть 3 записи с номерами от 1 до 3, то следующая запись автоматически будет иметь номер 4
10. Сохранение БД и создание скрипта

Все созданные базы данных хранятся на сервере. Чтобы перенести базу данных на другой сервер, необходимо правильно ее сохранить. Один из методов переноса - создание скрипта базы данных.
В данном случае выполнение скрипта приведет к восстановлению структуры таблиц и переносу записей из вашей базы данных.

Так что его можно использовать не только для переноса базы на другой сервер, но и для хранения резервных копий предыдущих состояний базы данных
Подведем итог сегодняшнего занятия. Создание базы данных — важный этап при разработке программного решения. В ней хранится большая часть информации, с которой взаимодействует программное решение. Грамотно спроектированная база данных позволит без особых проблем работать с данными в будущем приложении, быстро получать требуемую информацию, и сократит число строк кода для реализации этих функций.
А теперь предлагаем вам проверить свои знания на практике.
Интерактивное задание
Тест
Для закрепления полученных знаний пройдите тест
Стартуем!
Как называется поле, которое уникально характеризует запись (строку) в таблице?
Дальше
Проверить
Узнать результат
Как следует реализовать связь «многие-ко-многим» в базе данных?
Дальше
Проверить
Узнать результат
К сожалению, вы ответили неправильно
Прочитайте лекцию и посмотрите видео еще раз
Пройти еще раз
Неплохо!
Но можно лучше. Прочитайте лекцию и посмотрите видео еще раз
Пройти еще раз
Отлично!
Вы отлично справились. Теперь можете ознакомиться с другими компетенциями
Пройти еще раз