F530EFB30609B81FDFDE985C2ED2DB0F
.pdf
Глава 10. Базы данных
Первичный ключ – это атрибут или комбинация атрибутов, которые единственным образом идентифицируют каждый кортеж отношения.
Значение первичного ключа используется везде, где нужно указать на конкретный кортеж.
Ключ, состоящий из одного атрибута, называется простым, из нескольких — составным.
Набор атрибутов в подчиненном отношении называется вторичным ключом или внешним ключом, т.е. он определяет множество кортежей отношения, которые связаны с единственным кортежем основного отношения.
Первичный ключ, состоящий из информационных атрибутов отношения (т.е., атрибутов, несущих полезную информацию об объекте), называют естественным ключом. Ключ, состоящий из искусственно созданных технических атрибутов, не несущих информации об объектах, называется синтетическим (суррогатным) ключом. В практике создания баз данных чаще всего используются синтетические ключи. Чаще это просто числовое поле, в которое заносятся значения из возрастающей числовой последовательности.
На использовании ключей основана организация связей между отношениями реляционной базы данных. Существует несколько типов связей:
∙связь «один-к-одному» предполагает, что одному атрибуту первого отношения соответствует только один атрибут второго отношения и наоборот;
∙связь «один-ко-многим» предполагает, что одному атрибуту первого отношения соответствует несколько атрибутов второго отношения;
∙связь «многие-ко-многим» предполагает, что одному атрибуту первого отношения соответствует несколько атрибутов второго отношения и наоборот.
Таблицы реляционной базы данных должны отвечать требованиям нормализации отношений. Нормализация – это разбиение таблицы на несколько, что позволяет устранить дублирование, обеспечивает непротиворечивость хранимых в базе данных, уменьшает трудозатраты на ведение базы данных.
Отношения должны обладать следующими фундаментальными свойствами:
∙в отношении нет одинаковых кортежей; ∙кортежи не упорядочены (сверху вниз);
101
Раздел 3. Технологии обработки информации
∙атрибуты не упорядочены (слева направо); ∙все значения атрибутов атомарны.
10.4. Разработка баз данных
Разработка базы данных включает несколько этапов.
1. Проектирование базы данных.
Концептуальное проектирование — описание объектов базы данных (сущностей), определение их атрибутов и определение связей между объектами.
Логическое проектирование — для каждой сущности создается отношение (таблица), задаются первичные ключи. На этом этапе определяется СУБД.
Физическое проектирование — определение форматов хранения данных, методов доступа и т.д.
2.Создание структуры базы данных на ЭВМ — создаются таблицы в конкретной СУБД, устанавливаются связи между таблицами.
3.Заполнение таблиц реальными данными.
10.5. Общие сведения о СУБД Access
Access — это реляционная система управления базами данных, входящая в пакет Microsoft Office и предназначенная для работы в операционной системе Windows.
Строка заголовка в верхней части окна приложения содержит его название, а также название и путь размещения текущей базы данных и используется для перемещения окна (рис. 22).
Главное меню предоставляет пользователю доступ ко всем основным функциям СУБД.
Панель инструментов содержит значки для быстрого вызова наиболее важных и часто используемых функций.
В рабочей области открываются окна программы.
Окно «Область задач» появляется после запуска приложения и предлагает выбор: создать новую базу данных или открыть существующую.
Строка состояния в нижней части окна программы служит для вывода сведений о выполняемых операциях и отображает нажатые клавиш «Insert», «Caps Lock», «Num Lock», «Scroll Lock».
По умолчанию в Access используются файлы с расширением mdb
(до Access 2007) или accdb (Access 2007).
Основными объектами в Access являются таблицы, запросы, формы, отчеты, страницы, макросы, модули.
102
Глава 10. Базы данных
Рис. 22. Основные элементы окна программы Access после запуска приложения:
1 – строка заголовка окна приложения; 2 – главное меню; 3 – панель инструментов; 4 – рабочая область окна приложения;
5 – окно «Область задач»; 6 – строка состояния программы
Таблицы — объекты базы данных Access, в которых хранятся данные и структура базы.
Одна таблица содержит набор данных по конкретной теме.
Запросы — объекты базы данных Access, служащие для извлечения данных из таблиц и предоставления их пользователю в удобном виде.
Запросы используются для выборки, изменения и анализа данных. Запросы делятся на две группы: запросы на выборку и запросы на изменение данных. Запросы на выборку возвращают данные из одной или нескольких таблиц и отображают их в виде таблицы. Запросам на изменение позволяют удалять, добавлять, обновлять записи в таблицах, а также создавать новые таблицы, используя данные уже существующих.
Формы — объекты базы данных Access, служащие для более удобного ввода, редактирования и отображения данных.
103
Раздел 3. Технологии обработки информации
Формы удобны при вводе данных с заполненных бланков.
Отчеты — объекты базы данных Access, служащие для организации данных при выводе на печать.
В отчетах можно использовать специальные элементы оформления, характерные для печатных документов: шрифты, верхние и нижние колонтитулы, номера страниц, информацию о времени создания отчета.
Основными способами создания таблиц, запросов, форм и отчетов являются использование мастера и режима конструктора.
Страницы (страницы доступа к данным) — объекты базы данных Access, выполненные в коде HTML, размещаемые на веб-странице и передаваемые
клиенту вместе с ней.
Страницы доступа к данным осуществляют интерфейс между клиентом, сервером и базой данных, размещенной на сервере.
Макросы — объекты базы данных Access, содержащие последовательность макрокоманд, служащих для автоматизации некоторых операций.
Модули — объекты базы данных Access, содержащие программы на языке
Visual Basic.
Все объекты базы данных Access, кроме макросов и модулей, можно отображать в двух режимах: в режиме таблицы и режиме конструктора.
Режим конструктора обеспечивает большие возможности при создании таблицы, запроса, формы или отчета. В режиме конструктора задается структура объекта, например, определяются ширина, типы, свойства полей таблицы, их число и название.
В режиме таблицы можно добавлять, редактировать, просматривать, сортировать, удалять данные.
База данных может содержать множество записей. Упорядочение записей, т.е. расположение их в определенной последовательности, называется сортировкой. Сортировка записей проводится по заданно-
104
Глава 10. Базы данных
му полю. Сортировка записей может производиться по возрастанию или по убыванию.
Поиск записей в базе данных выполняется с помощью фильтров.
Фильтр — это набор условий, применяемых для отбора или сортировки данных.
В Access для отбора данных применяются следующие фильтры: ∙фильтр по выделенному — способ отбора записей в таблице,
форме в режиме таблицы или на странице доступа к данным, при котором отбираются только записи, содержащие выделенное значение;
∙фильтр по форме (обычный фильтр) — способ отбора записей по значениям нескольких полей, при котором пользователь использует форму или таблицу в режиме таблицы с пустыми полями, в которые вводятся значения, которые должны содержать отбираемые записи;
∙ поле «Фильтр для» — способ отбора записей, при котором конкретное искомое значение или выражение вводится в специальное поле, отображаемое в контекстном меню на поле, для которого нужно указать условия отбора;
∙расширенный фильтр — способ отбора записей, при котором в бланке фильтра вводятся условия отбора, с помощью которых из всех записей в открытой форме или таблице выделяется подмножество, удовлетворяющее данным условиям.
Условия отбора записей создаются с использованием операторов сравнения (= ,< , > и т.д.).
Простые фильтры содержат условие отбора записей только для одного поля. Сложные фильтры содержат несколько условий для различных полей. Если применён сложный фильтр, то будут отобраны только те записи, которые удовлетворяют всем условиям одновременно.
10.6.Типы и свойства полей данных в Access
ВAccess возможна работа с данными большого числа существующих на сегодняшний день форматов. Характер данных, которые допускается вводить в поле таблицы Access, определяется типом данных.
Основные типы полей данных:
∙счетчик — такое поле содержит целые числа с автоматическим
наращиванием, играет роль синтетического ключа;
105
Раздел 3. Технологии обработки информации
∙текстовый — используется для полей, содержащих тексты длиной до 255 символов;
∙поле Мемо — для хранения больших объемов текста (до 65 535 символов);
∙числовой — используется для хранения чисел; ∙дата/время — применяется для хранения информацию о датах и
времени; ∙денежный — применяется для ввода чисел в денежном форма-
те;
∙логический — используется для хранения логические данных, которые могут принимать только два значения: истина, ложь;
∙гиперссылка — для хранения адресов URL веб-объектов Интернета;
∙поле объекта OLE (объект, связанный или внедренный в таблицу Access) — используется для хранения изображений, звуковых файлов, диаграмм, электронных таблиц и т.д.
Свойства полей — это набор характеристик, обеспечивающих дополнительные возможности управления хранением, вводом и отображением данных в поле. Число доступных свойств зависит от типа данных поля.
В Access возможны следующие свойства полей базы данных:
∙имя поля – имя соответствующего свойства объекта (по умолчанию имена полей используются в качестве заголовков столбцов таблиц);
∙тип поля – тип данных, представляющих значения данного свойства;
∙размер поля – свойство, определяющее предельную длину (в символах) данных, которые могут размещаться в данном поле;
∙формат поля – свойство, определяющее способ форматирования данных в ячейках;
∙маска ввода – свойство, определяющее форму, в которой вводятся данные в поле (средство автоматизации ввода данных);
∙обязательное поле – свойство, определяющее обязательность заполнения данного поля при заполнении базы данных;
∙пустые строки – свойство, разрешающее ввод пустых строковых данных.
106
Глава 10. Базы данных
Вопросы для самопроверки
1.Что называется базой данных?
2.В чем отличие реляционных баз данных от других?
3.Что такое система управления базой данных (СУБД)?
4.Что такое отношение базы данных?
5.Что понимают под атрибутом базы данных?
6.Что такое первичный ключ?
7.Какой ключ называют синтетическим?
8.Что такое внешний ключ?
9.Какие типы связей могут существовать между отношениями в базе данных?
10.Какие этапы включает в себя технология разработки баз данных?
11.Что представляет собой СУБД Access?
12.Каково назначение основных объектов окна базы данных, которое появляется после загрузки Access?
13.Какие основные объекты может включать в себя база данных Access?
14.В каких режимах возможно отображение таблиц, запросов, форм и отчетов в Access?
15.Как можно создавать таблицы, запросы, формы и отчеты?
16.Для чего используются фильтры?
17.Какие типы полей предназначены для представления текстовых данных?
18.Каковы основные свойства полей?
107
ГЛАВА 11
ИНТЕЛЛЕКТУАЛЬНЫЕ ТЕХНОЛОГИИ
В главе рассматривается понятие и назначение интеллектуальных технологий. Говорится об экспертных системах, приводятся примеры их использования. Дается общая характеристика технологий нечеткой логии, нейросетевых структур, ассоциативной памяти, эволюционных алгоритмов.
11.1. Основные возможности и назначение интеллектуальных технологий
В различных сферах человеческой деятельности все больший вес приобретают интеллектуальные технологии.
Интеллектуальные технологии – технологии, направленные на обработку знаний в условиях неопределенности.
Для интеллектуальных технологий присущи следующие возможности:
∙наличие баз знаний; ∙наличие моделей мышления (правил и логических выводов; ар-
гументации и рассуждения; распознавания и классификации ситуаций; обобщения и понимания и т. п.);
∙способность формировать решения; ∙наличие механизма объяснений;
∙способность к обучению, переобучению и, следовательно, к развитию.
Интеллектуальные технологии незаменимы для решения так называемых трудноили неформализованных задач, т.е. задач, для которых отсутствует корректная математическая модель или решение связано с полным перебором.
Неформализованные задачи обычно обладают следующими особенностями:
∙ошибочностью, неоднозначностью, неполнотой и противоречивостью исходных данных;
∙ошибочностью, неоднозначностью, неполнотой и противоречивостью знаний о проблемной области и решаемой задаче;
∙большой размерностью пространства решения, т.е. перебор при поиске решения весьма велик;
∙динамически изменяющимися данными и знаниями.
108
Глава 11. Интеллектуальные технологии
Интеллектуальные технологии используются для решения следующих классов задач:
∙распознавания образов и анализа изображений, ∙понимания текста и речи, ∙принятия решений, ∙анализа конфликтных ситуаций,
∙планирования действий и поведения, ∙автоматизации программирования и проектирования, ∙управления сложными динамическими объектами.
Можно выделить следующие интеллектуальные технологии:
∙экспертных систем, ∙нечеткой логики, ∙нейросетевых структур, ∙ассоциативной памяти, ∙эволюционных алгоритмов.
Перечисленные технологии часто интегрируют.
11.2. Экспертные системы
Экспертные системы — программы, использующие знания экспертов для обеспечения высокоэффективного решения задач в некоторой узкой предметной
области.
Эксперт – это высококвалифицированный специалист в определенной области знаний.
Экспертные системы, как правило, представляют знания символически, исследуют и объясняют свои процессы рассуждения и предназначены для тех предметных областей, в которых людям для достижения мастерства необходимы годы специального обучения и практики.
Типичная экспертная система состоит из следующих основных компонентов:
∙базы данных, которая предназначена для хранения исходных и промежуточных данных решаемой в текущий момент задачи);
∙базы знаний, предназначенной для хранения долгосрочных данных, описывающих рассматриваемую область, и правил, описывающих целесообразные преобразования данных этой области;
∙решателя (интерпретатора), который, используя исходные данные из базы данных и знания из базы знаний, формирует последовательность правил, которые приводят к решению задачи;
∙компонента приобретения знаний, который автоматизирует процесс наполнения экспертной системы знаниями;
109
Раздел 3. Технологии обработки информации
∙объяснительного компонента, объясняющего, как система получила решение задачи (или почему она не получила решение) и какие знания она при этом использовала;
∙диалогового компонента, ориентированного на организацию дружественного общения с пользователем.
Примером экспертных систем в медицине являются MYCIN (предназначена для диагностика и лечение инфекционных заболеваний), CasNet/Glaukoma (для диагностика и разработки плана лечения глаукомы), MOLGEN (для выработки гипотез о структуре ДНК на основе экспериментов с ферментами), РЕПРОКОД (для диагностики сосудистые заболевания), THYROID MODEL (для диагностики нарушений функции щитовидной железы).
11.3. Технология нечеткой логики
Технология нечеткой логики — это технология обработки логиколингвистических моделей представления знаний, основанная на использовании
нечетких множеств.
В нечеткой логике значения любой величины представляются не числами, а словами естественного языка и называются термами. Например, значением логико-лингвистической переменной «Экстенсивность зараженности» являются термы «низкая», «средняя», «высокая» и
т. д.
Согласно теории нечетких множеств, каждому значению переменной может быть поставлено в соответствие некоторое число в диапазоне [0, 1], которое определяет степень принадлежности данного значения к тому или иному терму лингвистической переменной. Конкретное определение степени принадлежности возможно только при работе с экспертами.
В реализации технологии нечеткой логики имеются следующие основные этапы:
∙фаззификация, ∙нечеткий логический вывод, ∙дефаззификация.
На этапе фаззификации (от англ. fuzzy – нечеткий) точные значения входных переменных преобразуются в значения логико-лингви- стических переменных посредством применения теории нечетких множеств.
На этапе нечеткого логического вывода определяются продукционные правила, связывающие лингвистические переменные. Ти-
110
