Лекция: Билет № 17

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

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

В широком смысле база данных (БД) — совокупность определенным образом организованной информации на какую-то тему.

Примеры: база данных книжного фонда библиотеки; база данных учащихся школы; база данных законодательных актов в области уголовного права; база данных современных песен...

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

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

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

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

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

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

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

Очевидно, информацию в Интернете, объединенную «паутиной» WWW, можно рассматривать как распределенную базу данных. Распределенные базы данных создаются так же и в локальных сетях.

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

· Реляционные (табличные)

· Иерархические

· Сетевые

В настоящее время наибольшее распространение получили реляционные базы данных.

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

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

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

Примерами иерархических БД являются каталог папок Windows, реестр Windows, база данных Доменная система имен.

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

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

Реляционные (табличные) базы данных

Реляционные базы данных имеют табличную форму организации.

Главное достоинство таблиц — в их понятности. С табличной информацией мы имеем дело практически каждый день. Загляните, например, в свой дневник: расписание занятий там представлено в виде таблицы. Когда мы приходим на вокзал, смотрим расписание электричек. Какой вид оно имеет? Это таблица! А еще есть таблица футбольного чемпионата. И журнал учителя, куда он выставляет вам оценки, — тоже таблица.

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

Кратко особенности реляционной базы данных можно сформулировать следующим образом:

· Данные хранятся в таблицах, состоящих из столбцов («атрибутов», «полей») и строк («записей»);

· На пересечении каждого столбца и строчки стоит в точности одно значение;

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

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

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

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

Рассмотрим, например, базу данных «Школьные экзамены» (табл.), представляющую собой перечень результатов учеников по различным предметам школьного курса.


Еще пример. База данных «Ученики» хранит информацию об учениках школы (фамилия, имя, класс, адрес, дата рождения, рост, вес).


В реляционных БД строка таблицы называется записью, а столбец — полем. Каждое поле таблицы имеет имя. В нашем примере присутствуют поля: код, фамилия, имя, класс, адрес, дата рождения, рост и вес.

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

Поля — это различные характеристики (иногда говорят – атрибуты) объекта. Значения полей в одной строке относятся к одному объекту.

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

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

С каждым полем связано еще одно очень важное свойство – тип поля. Тип поля определяет множество значений, которые может принимать данное поле в различных записях.

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

· числовой;

· символьный;

· дата;

· логический.

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

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

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

Примеры СУБД: Microsoft Office Access из офисного пакета Microsoft Office — одна из самых распространенных СУБД; MySQL – широко распространенная в Интернет СУБД.

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

Основные функции СУБД:

· управление данными во внешней памяти (на дисках);

· управление данными в оперативной памяти;

· журнализация изменений и восстановление базы данных после сбоев;

· поддержание языков БД (язык определения данных, язык манипулирования данными).

Общепринятым стандартом языка работы с реляционными базами данных является язык SQL. SQL (англ. Structured Query Language — язык структурированных запросов) — универсальный язык, применяемый для создания, модификации и управления данными в реляционных базах данных.

Например, запрос «SELECT Таблица1.Фамилия, Таблица1.Имя, Таблица1.Вес FROM Таблица1 WHERE Таблица1.Вес>60;» позволяет выбрать учеников у которых вес больше 60 и выдать их фамилию, имя и вес.


Данные в БД хранятся в неупорядоченном виде — упорядочивание производится в момент формирования ответа на запрос. Например, запрос «SELECT Таблица1.Фамилия, Таблица1.Имя, Таблица1.Вес FROM Таблица1 WHERE Таблица1.Вес>60 ORDER BY Таблица1.Фамилия;» вернет учеников вес которых больше 60 упорядочив записи по фамилии.


В командах СУБД условие выбора записывается в форме логического выражения.

Логическое выражение, подобно математическому выражению, выполняется (вычисляется), но в результате получается не число, а логическое значение: истина (true) или ложь (false).

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

Часто встречаются задачи, в которых используются не отдельные условия, а совокупность связанных между собой условий (отношений). Например, нужно выбрать учеников у которых вес больше 60 и рост меньше 168.

Вот пример запроса: «SELECT Таблица1.Фамилия, Таблица1.Имя, Таблица1.Вес, Таблица1.Рост FROM Таблица1 WHERE (Таблица1.Вес>60) AND (Таблица1.Рост<168) ORDER BY Таблица1.Фамилия;».


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

Объединение двух (или нескольких) высказываний в одно с помощью союза «и» называется операцией логического умножения или конъюнкцией.

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

Объединение двух (или нескольких) высказываний с по мощью союза «или» называется операцией логического сложения или дизъюнкцией.

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

Присоединение частицы «не» к высказыванию называется операцией логического отрицания или инверсией.

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

Получим:
«SELECT Таблица1.Фамилия, Таблица1.Имя, Таблица1.Класс, Таблица1.Рост
FROM Таблица1
WHERE (Таблица1.Класс=«9 А») Or (Таблица1.Класс=«9 Б»)
ORDER BY Таблица1.Класс, Таблица1.Рост DESC;».


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

 

 

еще рефераты
Еще работы по информатике