Субд. основные понятия бд

В статье рассказывается о роли баз данных в современных реалиях и сформировано определение. Помимо этого, указываются виды баз данных и их классификация на основе структуры хранения данных. MySQL как эталонная СУБД для хранения данных в интернет-пространстве.

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

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

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

Выделяются следующие виды баз данных по структуре:

  • иерархические;
  • сетевые;
  • реляционные;

Рассмотрим каждый из них.

Иерархическая база данных

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

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

Все интернет-ресурсы также построены по иерархическому принципу, так как при его использовании ориентироваться в рамках сайта очень легко.

В качестве примера можно привести базу данных на языке XML, содержащую в себе очерки о состоянии сельского хозяйства в регионах России. В этом случае родительским элементом выступит государство, далее пойдёт разделение на субъекты, а в рамках субъектов будет своё разветвление. В данном случае от верхнего элемента к нижнему идёт строго одно обращение.

Сетевая база данных

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

В этом случае также примером выступает база данных на основе языка XML.

Реляционная база данных

Под данным типом баз данных понимается их представление в рамках двумерной таблицы. Она имеет несколько столбцов, в которых устанавливаются такие параметры, как, например, тип вводимых данных (текст, число, дата и др.).

Таблица здесь является способом хранения введённых в неё данных и способна реагировать на любые обращения со стороны СУБД. Главная проблема в работе с реляционными базами данных состоит в их правильном проектировании.

Во время проектирования базы данных следует учесть следующие два фактора:

  1. база данных должна быть компактной и не содержать избыточных компонентов;
  2. обработка базы данных должны происходить просто.

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

В крупных проектах задействовано множество таблиц, которых может быть более сотни. При этом обойтись без них невозможно, если человек имеет дело с важным и сложным проектом.

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

СУБД

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

Существует две модели СУБД - реляционная и безсхемная. О том, что такое реляционные базы данных, уже рассказано выше. Безсхемные СУБД основанные на принципах неструктурированного подхода избавляют программиста от проблем реляционной модели, в число которых входит низкая производительность и трудное масштабирование данных в горизонтальном формате.

Неструктурированные базы данных (NoSQL) создают структуру по ходу и убирают необходимость в создании жёстко определённых связей между данными. Здесь можно экспериментировать с разными способами доступа к тем или иным видам данных.

К реляционным базам данных относятся:

  • SQLite;
  • MySQL;
  • PostgreSQL.

Из них наиболее распространённой является база данных MySQL, но остальные тоже имеют популярность и с ними можно столкнуться.

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

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

Каждая NoSQL имеет собственную систему запросов, что требует дополнительного изучения данной системы.

Сравнение SQL и NoSQL

  1. Если SQL-системы основаны исключительно на строгом представлении данных, то NoSQL-системы предоставляют свободу и способны работать с любым типом данных.
  2. SQL-системы стандартизированы, за счёт чего запросы формируются с использованием языка SQL. В то же время NoSQL-системы базируются на специфической для каждой из них технологии, что является недостатком.
  3. Масштабируемость. Обе СУБД способны обеспечить вертикальное масштабирование, то есть увеличить объём системных ресурсов на обработку данных. При этом NoSQL, будучи более новой разновидностью баз данных, позволяет применять простые методы горизонтального масштабирования.
  4. В плане надёжности SQL обладает уверенным лидерством.
  5. У SQL-баз есть качественная техническая поддержка за счёт их продолжительной истории, в то время как NoSQL-системы весьма молоды и и решить какую-либо проблему сложнее.
  6. Хранение данных и доступ к их структурам в рамках реляционных систем лучше всего происходит в SQL-системах.

Таким образом, хоть NoSQL и является стремительно развивающейся разновидностью систем управления базами данных, однако на данном этапе рекомендуется остановить свой выбор на SQL.

Надёжность SQL-систем, особенно MySQL, подтверждается временем и массовостью. Сегодня любой уважающий себя ресурс использует для хранения данных именно систему MySQL.

Урок " Основные понятия БД "

Любой из нас, начиная с раннего детства, многократно сталкивался с «базами данных». Это - всевозможные спра­вочники (например, телефонный), энциклопедии и т. п. За­писная книжка - это тоже «база данных», которая есть у каждого из нас.

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

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

Информация в базах данных хранится в упорядоченном виде. Так, в записной книжке все записи упорядочены по - алфавиту, а в библиотечном каталоге - либо по алфавиту – алфавитный каталог), либо по области знания (предметный каталог).

Существует несколько различных структур информационных моделей и соответственно различных типов баз данных: табличная, сетевая, иерархическая (см. модели).

Иерархические базы данных

Иерархические базы данных графически могут быть представлены как перевернутое дерево, состоящее из объектов различных уровней. Верхний уровень (корень дерева ) занимает один объект, второй - объекты второго уровня и так далее.

Между объектами существуют связи, каждый объект может включать в себя несколько объектов более низкого уровня. Такие объекты находятся в отношении предка (объ­ект, более близкий к корню) к потомку (объект более низкого уровня), при этом объект-предок может не иметь потомков или иметь их несколько, тогда как объект-потомок обязательно имеет только одного предка. Объекты, имеющие общего предка, называются близнецами .

Например: иерархической базой данных является Каталог папок Windows , с которым можно работать, запустив Проводник. Верхний уровень занимает папка Рабочий стол. На втором уровне находятся папки Мой компьютер, Мои документы, Сетевое окружение и Корзина, которые являются потомками папки Рабочий стол, а между собой является близнецами. В свою очередь, папка Мой компьютер является предком по отношению к папкам третьего уровня - папкам дисков (Диск 3,5(А:), (С:), ( D :), (E :), (F :)) и системным папкам (Принтеры, Панель управления и др.)

Сетевые базы данных

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

Сетевой базой данных фактически является Всемирная пау mu н a глобальной компьютерной сети Интернет. Гиперссылки связывают между собой сотни миллионов документов в единую распределенную сетевую базу данных.

Табличные базы данных

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

Рассмотрим, например, базу данных: Телефонный справочник

Фамилия

Адрес

Телефон

Иванов В.В.

Серова, 5 12

4325345

Петров И.И.

Седова, 3-21

3454365

Сидоров С.С.

Мира, 33-17

3454354

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

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

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

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

Телефонный справочник

Имена полей

Фамилия

Адрес

Телефон

Запись

Иванов В.В.

Серова, 5 12

4325345

Запись

Петров И.И.

Седова, 3-21

3454365

Запись

Сидоров С.С.

Мира, 33-17

3454354

Ключевое

поле

Поле

Поле

Поле

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

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

    текстовый - тексты, содержащие до 255 символов;

    числовой - числа;

    дата/время - дата или время;

    денежный - числа в денежном формате;

    логический - значения Истина (Да) или Ложь (Нет);

    поле объекта OLE - изображение или рисунок

Поле каждого типа имеет свой набор свойств. Наиболее в ажными свойствами полей являются:

    размер поля - определяет максимальную длину тексто вого или числового поля;

    формат поля - устанавливает формат данных;

    обязательное поле - указывает на то, что данное поле обязательно надо заполнить

Система управления базами данных Access (СУБД)

Назначение и основные функции

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

Таким образом, необходимо различать собственно базы данных (БД), которые являются упорядоченными наборами данных, и системы управления базами данных - программы, управляющие хранением и обработкой данных.

Системой управления базами данных является приложение Access , входящее в Microsoft Office .

Интерфейс программы Access

В Access используется стандартный для среды Windows & Office многооконный интерфейс, но в отличие от других приложений, не многодокументный. Единовременно может быть открыта только одна база данных , содержащая обязательное окно базы данных и окна для работы с объектами базы данных. В каждый момент времени одно из окон является активным и в нем курсором отмечается активный объект.

Окно базы данных - один из главных элементов интерфейса Access . Здесь систематизированы все объекты БД: таблицы, запросы, формы, отчеты, макросы и модули.

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

Объект ы в СУБД Access :

· Таблица. В базах данных вся информация хранится в двумерных таблицах. Это базовый объект БД, все остальные объекты создаются на основе существующих таблиц (производные объекты).

· Запросы. Запросы предназначены для отбора данных на основании заданных условий. С помощью запроса из базы данных можно выбрать информацию, удовлетворяющую определенным условиям.

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

· Отчеты. Отчеты предназначены для печати данных, содержащихся в таблицах и запросах, в красиво оформленном виде.

· Макросы. Макросы служат для автоматизации повторяющихся операций. Запись макроса производится так же, как в других приложениях, например как в приложении Word .

· Модули. Модули также служат для автоматизации работы с БД. Модули еще называют процедурами обработки событий и пишутся на языке VBA .

Федеральное агентство по образованию

Государственное Общеобразовательное Учреждение

Среднепрофессионального Обучения

«Тульский экономический колледж»

По дисциплине «Информатика»

На тему: «База данных. Понятие базы данных. Виды баз данных. Объекты для работы с базами данных. Типы данных в базах и таблицах Access. Основные элементы и понятия баз данных»

Подготовила студентка 2 курса

группы 216-БП

Храмова Анна

Проверил преподаватель:

Васильева И.В.

Щёкино,2007

С О Д Е Р Ж А Н И Е:

1. Введение…………………………………………...…………….……2

2. Понятие базы данных………………………………………………..3

3. Виды базы данных………………………………………….………4-5

4. Объекты для работы с базами данных…………………………...6-7

5. Типы данных в базах………………………………………………….8

6. Типы данных в таблицах Access……………………………………9

7. Основные элементы и понятия баз данных…………………..10-15

8. Тест…………………………………………………………….…16-17

9. Ответы на тест……………………………………………...…….…18

10. Вопросы для самопроверки………………………………..........19

11. Список используемой литературы……………………………….20

12. Презентация……………………………………………………21-33

13. Рецензия………………………………………………..…………..34

В В Е Д Е Н И Е:

Мы познакомились с работой Excel и знаем, что это приложение создано специально для решения задач обработки табличных данных.

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

Использование ЭВМ именно для решения этого класса задач становится всё более массовым явлением.

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

Основное понятие для подобного круга задач – база данных. Так называется файл или группа файлов стандартной структуры, служащая для хранения данных.

Для разработки программ, систем программ, работающих с базами данных, используются специальные средства – системы управления базами данных (СУБД).

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

В настоящее время наиболее известными СУБД являются FOXPRO и ACCESS. Последняя входит в состав профессионального пакета MS Office 97.

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

Понятие базы данных

База данных (БД) – это совокупность массивов и файлов данных, организованная по определённым правилам, предусматривающим стандартные принципы описания, хранения и обработки данных независимо от их вида.

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

Виды БД:

1.Фактографическая – содержит краткую информацию об объектах некоторой системы в строго фиксированном формате;

2.Документальная – содержит документы самого разного типа: текстовые, графические, звуковые, мультимедийные;

3.Распределённая – база данных, разные части которой хранятся на различных компьютерах, объединённых в сеть;

4.Централизованная – база данных, хранящихся на одном компьютере;

5.Реляционная – база данных с табличной организацией данных.

Одно из основных свойств БД – независимость данных от программы, использующих эти данные.

Работа с базой данных требует решения различных задач, основные из них следующие:

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

Задачи этого списка называются стандартными.

Следующее понятие, связанное с базой данных: программа для работы с базой данных – это программа, которая обеспечивает решение требуемого комплекса задач. Любая подобная программа должна уметь решать все задачи стандартного набора.

База данных в разных системах имеет различную структуру.

В ПВЭМ обычно используются реляционные БД – в таких базах файл является по структуре таблицей. В ней столбцы называются полями, строки – записями.

Примером БД может служить расписание движения поездов или автобусов. Здесь каждая строчка – запись отражает данные строго одного объекта. База включает поля: номер рейса, маршрута следования, время отправления и т.д.

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

Некоторые запросы могут представлять собой серьёзную задачу, для решения которой потребляется составлять сложную программу. Например, запрос к базе – автобусному расписанию: определить разницу в среднем интервале отправления автобусов из Ростова в Таганрог и из Ростова в Шахты.

Объекты для работы с базами данных

Для создания приложения, позволяющего просматривать и редактировать базы данных, нам потребуется три звена:

набор данных

источник данных

визуальные элементы управления

В нашем случае эта триада реализуется в виде:

Table

DataSource

DBGrid

Table подключается непосредственно к таблице в базе данных. Для этого нужно установить псевдоним базы в свойстве DataBaseName и имя таблицы в свойстве TableName, а затем активизировать связь: свойство Active = true.

Однако, поскольку Table является невизуальным компонентом, хотя связь с базой и установлена, пользователь не в состоянии увидеть какие – либо данные. Поэтому необходимо добавить визуальные компоненты, отображающие эти данные. В нашем случае это сетка DBGrid. Сетка сама по себе «не знает», какие данные ей нужно отображать, её нужно подключить к Table, что и делается через компонент – посредник DataSource.

А зачем нужен компонент – посредник? Почему бы сразу не подключаться к Table?

Допустим, несколько визуальных компонентов – таблица, поля ввода и т.п. подключены к таблице. А нам нужно быстро переключить их все на другую подобную таблицу. С DataSource это сделать несложно - достаточно просто поменять свойство DataSet, а вот без DataSource пришлось бы менять указатели у каждого компонента.

Приложения баз данных – нить, связывающая БД и пользователя:

БД – набор данных – источник данных – визуальные компоненты – пользователь

Набор данных:

Table (таблица, навигационный доступ)

Query (запрос, реляционный доступ)

Визуальные компоненты:

Сетки DBGrid , DBCtrlGrid

Навигатор DBNavigator

Всяческие аналоги Lable , Edit и т.д.

Компоненты подстановки

Типы данных в базах

В Access можно определить следующие типы полей:

Текстовый – текстовая строка; максимальная длина задаётся параметром «размер», но не может быть больше 255

Поле МЕМО – текст длиной до 65535 символов

Числовой – в параметре «Размер поля» можно задать поле: байт, целое, дейсвительное и т.п.

Дата/время – поле, хранящее данные о времени.

Денежный – специальный формат для финансовых нужд, по сути являющийся числовым

Счётчик – автоинкрементное поле. При добавлении новой записи внутренний счётчик таблицы увеличивается на единицу и записывается в данное поле новой записи. Таким образом, значения этого поля гарантированно различны для разных записей. Тип предназначен для ключевого поля

Логический – да или нет, правда или ложь, включен или выключен

Объект OLE – в этом поле могут храниться документы, картинки, звуки и т.п. Поле является частным случаем BLOB – полей ( Binary Large Object ), встречающихся в различных базах данных

Подстановка

Типы данных в таблицах Access :

Текстовый

Поле МЕМО

Числовой

Дата\время

Денежный

Счётчик

Логический

Объект OLE

Не надо забывать про индексы.

Связывать таблицы.

Связь с обеспечением целостности контролирует каскадное удаление и модификацию данных.

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

Основные понятия и элементы баз данных

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

Основное требование к базам данных – удобство доступа к данным, возможность оперативно получить исчерпывающую информацию по любому интересующему вопросу (важно не только то, что информация содержится в базе, важно то, насколько она хорошо структирована и целостна).

Лишь только появились и распространились компьютеры, почти сразу на них возложили тяжёлый и кропотливый труд по обработке и структурированию данных, появились базы данных (БД) в их нынешнем понимании.

Согласно современным требованиям к базам данных, информация, содержащаяся в них, должна быть:

непротиворечивой (не должно быть данных, противоречащих друг другу);

неизбыточной (следует избегать ненужного дублирования информации в базе, избыточность может привести к противоречивости – например, если какие – то данные изменяют, а их копию в другой части базы забыли изменить);

целостной (все данные должны быть связаны, не должно быть ссылок на несуществующие в базе данные)

Реляционная модель баз данных была предложена Эдгаром Коддом в конце 70-х годов. В рамках этой модели база данных представляет собой набор таблиц, связанных друг с другом отношениями. При достаточной простоте (а значит, и удобстве реализации на компьютере) данная модель обладает гибкостью, позволяющей описывать сложно структурированные данные. Кроме того, для этой модели достаточно глубоко проработано теоретическое обоснование, что также даёт возможность эффективнее использовать компьютер при создании базы данных и работе с ней. В плане правил связи в реляционной модели реализуется отношение «один–ко–многим» связи между таблицами. Это значит, что одной записи в главной таблице соответствует несколько записей в подчинённой таблице (в том числе может не соответствовать ни одной записи). Другие типы связей: «один-к-одному», «много-к-одному» и «много-ко-многим» - можно свести к данному типу «один-ко-многим». Реляционные базы данных состоят из связанных таблиц.

Таблица представляет собой двумерный массив, в котором хранятся данные. Столбцы таблицы (в рамках принятых обозначений БД) называются полями, строки – записями. Количество полей таблицы фиксировано, количество записей – нет. Фактически таблица – нефиксированный массив записей с одинаковой структурой полей в каждой записи. Добавить в таблицу новую запись не составляет труда, а то время как добавление нового поля влечёт за собой рестрктуризацию всей таблицы и может вызвать определённые трудности. В качестве значений полей в записях могут храниться числа, строки, картинки и т.д. Таблицы баз данных хранятся на жёстком диске (на локальном компьютере или на сервере баз данных – в зависимости от типа БД). Одной таблице соответствуют обычно несколько файлов – один основной и несколько вспомогательных. Тонкости организации таблиц зависят от используемого формата (dBase, Paradox, InterBase, Microsoft Access и т.д.)

Ключ – поле или комбинация полей таблицы, значения в которых однозначно определяют запись. Ключ потому так и называется, что, имея значения ключевых полей, можно однозначно получить доступ к нужной записи. Таким образом, ключи чрезвычайно полезны для связи таблиц. Записывая значения ключа в отведённые поля подчинённой таблицы и тем самым, задавая ссылку, обеспечиваем связь двух записей – записи в главной таблице и записи в подчинённой таблице. В одной записи подчинённой таблицы может находиться и несколько ссылок на записи главной таблицы. Например, в школьном журнале может быть таблица – список дежурств, где в каждой записи содержатся фамилии и имена (ключ их двух полей) нескольких дежурных. Так осуществляется связь различных записей главной таблицы и реализуется достаточно сложная структура данных. В школьной практике в качестве ключевых полей используются имена и фамилии, но в БД лучше отводить специальные ключевые поля – индивидуальные номера (коды) записей. Это гарантированно уберегает от возможных проблем с однофамильцами. В школе же, где не требуется такая компьютерная чёткость, появление в одном классе двух учеников с одинаковыми именами и фамилиями – очень редкое событие, поэтому можно простить подобное техническое упущение. Кроме связывания, ключи могут использоваться для прямого доступа к записям, ускорения работы с таблицей.

Индекс – поле, так же, как и ключ, специально выделенное в таблице, данные в котором, однако, могут повторяться. Они также служат для ускорения доступа и, кроме того, для сортировки и выборок.

Нормальные формы были придуманы, скорее, для автоматизации процесса создания баз данных, нежели как руководство тем, кто создаёт их вручную (автоматическое проектирование больших баз данных может производиться с помощью специальных систем программ – средств (CASE). Реально при ручной разработке проектировщик сразу же задумывает необходимую структуру, планирует нужные таблицы, а не идёт от одной большой таблицы. Нормальные формы фактически формализуют интуитивно понятые требования к организации данных, помогая, прежде всего, избежать избыточного дублирования данных.

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

информация в полях неделимая (к примеру, имя и фамилия должны быть разными полями, а не одним);

в таблице нет повторяющихся групп полей

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

выполнена первая форма;

любое неключевое поле однозначно идентифицируется ключевыми полями (фактически, требование наличия ключа)

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

выполнена вторая форма

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

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

Для более глубокого понимания тонкостей проведения операций с записями в таблицах необходимо иметь понятия о способах доступа, транзакциях и бизнес-правилах.

Способы доступа определяют, как технически производятся операции с записями. Способы доступа выбираются программистом во время разработки приложения. Навигационный способ основан на последовательной обработке нужных записей поодиночке. Он обычно используется для небольших локальных таблиц. Реляционный способ основан на обработке сразу набора записей с помощью SQL-запросов. Он используется для больших удалённых БД.

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

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

Корректная БД:

- неизбыточная;

- непротиворечивая;

- целостная

Реляционная БД:

- таблицы;

- связи между таблицами с помощью ключей

- поля (столбцы) – фиксированы;

- записи (строки) – легко добавляются и удаляются

- однозначно определяет запись

Ключи и индексы:

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

Нормальные формы:

- служат для борьбы с избыточностью данных;

- много требуют, но из самых благих побуждений

Способы доступа:

-навигационный;

- реляционный

Защита корректности БД:

- транзакции – техническая защита

- бизнес-правила – логическая защита

Т Е С Т

1.Модели баз данных:

А) коммерческие

Б) сетевые

В) объектно-ориентированные

Г) революционные

Д) реляционные

Е) интегральные

2.Виды базы данных:

А) документальные

Б) сетевые

В) графические

Г) реляционные

3.Какая из баз данных содержит документы самого разного типа?

А) распределённая

Б) централизованная

В) фактографическая

Г) документальная

4.Что может являться примером базы данных?

А) пешеход, стоящий на обочине дороги

Б) телефонный справочник

В) расписание уроков

Г) расписание движения поездов или автобусов

5. Что такое ключ?

А) ссылкаБ) кодовое словоВ) программаГ) поле или комбинация полей таблицы

6. Что будет выведено на экран в результате выполнения фрагмента программы?

M:= ‘биология’;
k:= ‘зоо’ + copy (m, 4, 5);
writeln (k);

А) зоологияБ) зооВ) биологияГ) логия 7.Набор данных содержит: А) навигатор DBNavigatorБ) TableВ) Query 8.Выберите верное утверждение: денежный тип полей… А) текстовая строкаБ) текст длиной до 65535 символовВ) специальный формат для финансовых нуждГ) автоинкретное поле 9.Основное требование к данным: А) потребность в хранении больших объёмов однотипной информацииБ) быстрое распространение информацииВ) возвратное удаление информацииГ) удобство доступа к данным и быстрое нахождение нужной информации по интересующему вопросу 10.Какой должна быть информация, находящаяся в требованиях к базам данных? А) целостнойБ) краткойВ) непротиворечивойГ) однотипной

Ответы на тест

Вопросы для самопроверки :

1. Что такое БД?

2. Что является классическим примером БД?

3. Приведите несколько примеров БД

4. Какой вид БД обычно используется в ПВЭМ?

5. Какие виды БД вы знаете?

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

7. Какие типы полей можно определить в Access?

8. Для чего нужен монопольный доступ к БД?

9. Что такое реляционная модель базы БД?

10. Сколько существует нормальных форм в БД? Перечислите их

11. Что такое транзакции?

Л И Т Е Р А Т У Р А :

1. Информатика. Учебное пособие для среднего профессионального образования (+CD)/Под общ. ред. И.А. Черноскутовой – СПб.: Питер, 2005. – 272 с.: ил. стр. 24 - 25

2. Информатика. Учебное пособие для студ. пед. вузов /А.В.Могилёв; Н.И.Пак, Е.К.Хённер; Под ред. Е.К.Хённера. – М., 1999. - 816 с стр. 185 - 187

3. Информатика. Учебник. – 3-е перераб. изд./Под ред. проф. Н.В.Макаровой. – М.: Финансы и статистика, 2000. – 768 с.: ил.

Р Е Ц Е Н З И Я

Непрерывно растущий объем информации, поступающий через все СМИ каждому человеку в отдельности и человечеству в общем, постоянно растет, и она обязательно нуждается в хранении и обработке. Поэтому освоение средств, позволяющих систематизировать, накапливать и рационально использовать всю информацию, становится необходимостью в жизни каждого. Именно для этого предназначены различные СУБД — системы управления базами данных.

СУБД - термины и определения

База данных - это многогранное понятие. В общем случае под базой данных (БД) подразумевается совокупность сведений, объединенных по какому-то признаку. Например, к БД можно отнести телефонный справочник или прайс-лист компании.

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

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

Сравнение Access и Excel

Какие же преимущества имеют БД перед другими хранилищами информации, например, электронными таблицами, текстовыми редакторами и так далее? Для сравнения лучше всего подходят и электронные таблицы Excel. Такой выбор обусловлен тем, что оба приложения входят в один пакет и применяются для хранения данных. Access - это, по сути, бесплатная база данных, идущая бонусом к текстовому редактору Word и таблицам Excel.

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

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

Количество строк в Excel не может превышать 65536, в Access же количество записей вообще не ограничено. Существует только лимит на общий размер файла - не более 2Гб.

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

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

Классификация баз данных

Базы данных можно разделить по 4 признакам:

1. Применяемый язык программирования. Открытые базы опираются на один из универсальных языков. В замкнутых базах используются собственный язык программирования.

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

3. Сфера применения. Различают универсальные БД и специализированные, предназначенные для решения конкретных задач.

4. По «мощности» все БД делятся на корпоративные и настольные. Вторые имеют низкую стоимость, рассчитаны на единичного пользователя, имеют низкие требования к техническим средствам.

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

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

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

Модели баз данных

Существует 3 способа хранения информации в базах данных:

1. Иерархическая модель может быть представлена в виде дерева. На первом уровне расположен один объект. Ниже располагаются подчиненные ему объекты 2-го уровня. Каждый объект может иметь несколько подчиненных ему низшего уровня, но всегда связан только с одним объектом уровня выше. Примером иерархической модели служит операционная система Windows.

2. Сетевая модель является расширением иерархической. В ней убрано ограничение на количество связей объекта низшего уровня с объектом уровня выше. Примером такой модели служит сеть Интернет, которая представляет собой глобальную распределенную базу данных.

3. Реляционная (табличная) модель - самый распространенный способ хранения данных. Все данные собраны в таблицы, между которыми можно установить связи. На этом виде мы остановимся подробнее.

Реляционная модель баз данных

Большинство современных СУБД используют реляционную модель построения базы данных.


Для таких баз характерны следующие особенности:

1. Все таблицы имеют одинаковую структуру.

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

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

Сфера применения баз данных

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

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

Access - сама распространенная БД

Для этих целей не требуются сложные СУБД, заточенные на корпоративных клиентов. Обычно достаточно настольного приложения на одного пользователя. И лучше всего с этой задачей справится база данных Access. Она входит в состав пакета MS Office. Access ориентирована на конечного пользователя и имеет удобный интерфейс. Имеется огромное количество литературы, в которой рассматривается база данных. Пример учебной базы данных входит также и в состав Access.

Краткий обзор Access

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

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

Сам ввод происходит не в таблицы, а через интерфейс, настроенный программистом. Таким образом можно обеспечить сохранность информации в таблице - пользователь просто не будет иметь к ней доступа. Кроме того, сам ввод данных будет комфортным и удобным.

За выборку данных из таблиц отвечает специальный язык - SQL. Он примерно одинаков для разных СУБД, хотя отдельные команды в них могут различаться. В Access выборка осуществляется с помощью запросов. Запросы носят динамический характер, то есть при вводе в таблицы новых данных результаты, выдаваемые запросом, будут меняться. Результат запроса можно также просмотреть в удобочитаемой форме в виде отчета.

Отчет - это шаблон документа, при открытии которого в него вносятся данные из запроса или таблицы. В Access создана гибкая система обмена данными, прежде всего между различными приложениями пакета Office. Данные из Access легко переносятся в Word или Excel. После чего их можно отправить по электронной почте, провести необходимые вычисления и опять экспортировать в Access.

База данных - это еще и среда программирования. В Access встроен мощный язык программирования - Visual Basic for Application(VBA). Он позволяет создавать достаточно сложные приложения, в том числе и для коммерческого применения.

Тенденции развития баз данных

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

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

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

База данных

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

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

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

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

Система управления базами данных

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

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

Либо, если деление идет по тому, где размещается СУБД , их можно разделить на локальные - вся СУБД размещается на одном компьютере, и распределенные - части системы управления базами данных находятся на нескольких компьютерах.

Файл-серверные, клиент-серверные и встраиваемые - такие названия носят СУБД, если разделить их по способу доступа к базам данных . Файл-серверные СУБД на данный момент уже считаются устаревшими; в основном идет использование клиент-серверных (СУБД, которые располагаются на сервере вместе с самой базой данных) и встраиваемых (не требующих отдельной установки) систем.

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

В этой статье я сделаю упор на СУБД, которые используются для хранения информации различных веб-ресурсов.

Зачем же нужны эти СУБД? Помимо основной своей функции - хранения и систематизации огромного количества информации - они позволяют быстро обрабатывать клиентские запросы и выдавать свежую и актуальную информацию.

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

Реляционные СУБД и язык SQL

Реляционные и объектно-реляционные СУБД являются одними из самых распространенных систем. Они представляют собой таблицы, у которых каждый столбец (который называется “field” или «поле») упорядочен и имеет определенное уникальное название. Последовательность строк (их называют “records” или «записи») определяется последовательностью ввода информации в таблицу. При этом обрабатывание столбцов и строк может происходить в любом порядке. Таблицы с данными связаны между собой специальными отношениями, благодаря чему с данными из разных таблиц можно работать - к примеру, объединять их - при помощи одного запроса.

Для управления реляционными базами данных применяется особый язык программирования - SQL. Сокращение расшифровывается как “Structured query language”, в переводе на русский «язык структурированных запросов».

Команды, которые используются в SQL, делятся на те, которые манипулируют данными, те, которые определяют данные, и те, которые управляют данными.

Схема работы с базой данных выглядит следующим образом:


MySQL

MySQL является одной из самых популярных и распространенных СУБД, которая используется во многих компаниях (например, Facebook, Wikipedia, Twitter, LinkedIn, Alibaba и других). MySQL представляет собой реляционную СУБД, которая относится к свободному программному обеспечению: она распространяется на условиях GNU Public License. Как правило, эту систему управления базами данных определяют как хорошую, быструю и гибкую систему, рекомендованную к применению в небольших или средних проектах. У MySQL есть множество различных преимуществ. Например, она поддерживает различные типы таблиц: как известные MyISAM и InnoDB, так и более экзотичные HEAP и MERGE; кроме того, количество поддерживаемых типов постоянно растет. MySQL выполняет все команды быстро - возможно, сейчас это самая быстрая СУБД из всех существующих. С этой системой управления базами данных может одновременно работать неограниченное количество пользователей, а число строк в таблицах может быть равно 50 миллионам.

Так как в сравнении с некоторыми другими СУБД MySQL поддерживает меньшее количество возможностей, то и работать с ней значительно проще, чем, к примеру, с PostgreSQL, о которой будет рассказано ниже.

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

Для работы с MySQL используется не только текстовый, но и графический режим. Это возможно благодаря приложению phpMyAdmin: для работы в приложении вам даже не нужно будет знать SQL-команды, а администрировать свою базу данных можно прямо через браузер.

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


PostgreSQL

Эта свободно распространяемая система управления базами данных относится к объектно-реляционному типу СУБД. Как и в случае с MySQL, работа с PostgreSQL основывается на языке SQL, однако, в отличие от MySQL, PostgreSQL поддерживает стандарт SQL-2011. Эта СУБД не имеет ограничений ни по максимальному размеру базы данных, ни по максимуму записей или индексов в таблице.

Если говорить о преимуществах PostgreSQL, то, безусловно, это надежность транзакций и репликаций, возможность наследования и легкая расширяемость. PostgreSQL поддерживает различные расширения и варианты языков программирования, такие как PL/Perl, PL/Python и PL/Java. Также есть возможность загружать C-совместимые модули.

Многие отмечают, что в отличие от MySQL данная СУБД имеет хорошую и подробную документацию, которая дает ответы практически на все вопросы.

О том, что это более масштабная, чем MySQL, СУБД, говорит и тот факт, что PostgreSQL периодически сравнивают с такой мощной системой управления данных, как Oracle.

Все это позволяет говорить о PostgreSQL как об одной из самых продвинутых СУБД на данный момент.


SQLite

На данный момент это одна из самых компактных СУБД; также она является встраиваемой и реляционной. SQLite позволяет хранить все данные в одном файле и, благодаря своему небольшому объему, отличается завидным быстродействием. SQLite значительно отличается от MySQL и PostgreSQL своей структурой: движок и интерфейс этой СУБД находятся в одной библиотеке - и именно это позволяет выполнять все запросы очень быстро. Другие СУБД (MySQL, PostgreSQL, Oracle и т.д.) используют парадигму клиент-сервер, когда взаимодействие происходит через сетевой протокол.

Из недостатков можно отметить отсутствие системы пользователей и возможности увеличения производительности.

SQLite можно посоветовать к использованию в проектах, где нужно иметь возможность быстро перенести приложение, и нет необходимости в масштабируемости.


Oracle

Эта СУБД относится к объектно-реляционному типу. Название произошло от названия разработавшей эту систему фирмы Oracle. Наравне с SQL СУБД использует процедурное расширение под названием PL/SQL, а также язык Java.

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

В отличие от других СУБД, стоимость покупки и использования Oracle достаточно высока, и именно это зачастую является значимым препятствием к ее использованию в небольших фирмах. Вероятно, именно это также является причиной того, что в рейтинге СУБД на 2016 год в России Oracle находится лишь на 6-м месте.



MongoDB

Эта СУБД отличается тем, что она предназначена для хранения иерархических структур данных, и поэтому ее называют документоориентированной (она представляет собой документное хранилище без использования таблиц или схем). MongoDB имеет открытый исходный код.

Используя идентификатор, вы можете производить быстрые операции над объектом; эта СУБД хорошо показывает себя и при сложных взаимодействиях. В первую очередь речь идет о быстродействии - в некоторых случаях приложение, написанное на MongoDB, будет работать быстрее, чем такое же приложение, использующее SQL, т.к. MongoDB относится к классу СУБД NoSQL и вместо SQL пользуется объектным языком запросов, который значительно легче SQL.

Однако этот язык имеет и свои ограничения, а поэтому MongoDB следует использовать в случаях, когда нет необходимости в сложных и нетривиальных выборках.

Вместо заключения

Выбор СУБД - это важный момент при создании своего ресурса. Отталкивайтесь от своих задач и возможностей, пробуйте и экспериментируйте, чтобы найти именно тот вариант, который будет наиболее подходящим.