Работа с информацией. Методы решения задач. Языки программирования и алгоритмизация. Базы данных и компьютерные сети

Сбор, передача, обработка и накопление информации. Реализация информационных процессов. Модели решения функциональных и вычислительных задач. Алгоритмизация и программирование. Базы данных, локальные и глобальные сети ЭВМ. Методы защиты информации.

Рубрика Программирование, компьютеры и кибернетика
Вид курс лекций
Язык русский
Дата добавления 29.11.2012
Размер файла 757,6 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

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

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

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

ДЕ7. Базы данных

Лекция 7.1 Базы данных и системы управления базами данных

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

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

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

7.1.2 Классификация БД

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

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

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

По способу доступа к данным БД распределяются на локальный и удаленный (сетевой) доступ.

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

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

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

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

7.1.3 Виды структур данных

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

Табличная или реляционная структура

Предположим мы хотим собрать информацию об альбомах музыкальных групп. Пусть имеется информация о некоторых альбомах: 1965, Led Zeppelin 4, Lp, Help!, Atlantic, 1971, Lp (England), EMI, 1970, Flash Gordon, Parlophone, 1980, Led Zeppelin 3, Soundtrack, Lp, Atlantic. Этот список мало о чем говорит. Извлечь какую-либо информацию из этого набора данных практически невозможно.

Представим данные в виде табл. 7.1.1.

Таблица 7.1.1 Информация об альбомах музыкальных групп

Название альбома

Год выпуска

Тип

Фирма альбома

Help!

1965

Lp (England)

Parlophone

Led Zeppelin 4

1971

Lp

Atlantic

Led Zeppelin 3

1970

Lp

Atlantic

Flash Gordon

1980

Soundtrack

EMI

Теперь воспринимать и использовать информацию стало гораздо удобнее. Представленная таблица является информационной моделью. Объектами, отраженными в этой модели, являются музыкальные альбома (групп), причем все данные взаимосвязаны. Свойствами этих объектов находятся в столбцах таблицы («Название альбома», «Год выпуска», «Тип альбома», «Фирма»), их называют атрибутами объектов. Таким образом, каждая строка таблицы - есть совокупность атрибутов объекта. Такую строку называют записью, а столбец - полем записи.

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

какая группа выпустила больше альбомов за определенный период;

число альбомов данной группы;

сколько имеется альбомов типа Soundtrack (музыка к фильму);

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

Иерархическая структура

Рис. 7.1.1 Пример иерархической организации данных

Для иерархической структуры (рис. 7.1.1) характерна подчиненность объектов нижнего уровня объектам верхнего уровня.

Важно отметить, что в дереве, между верхними и нижними объектами, задано отношение «один ко многим» (т.е. одной группе соответствует много альбомов, одному альбому соответствует много песен).

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

В каком альбоме больше песен;

Число альбомов выпущенных группой;

Есть ли в альбомах одинаковые песни и т.д.

Сетевая структура

Сетевую структуру данных можно представить в виде схемы, рис. 7.1.2.

Рис. 7.1.2 Пример сетевой организации данных

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

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

Гитары, какой фирмы предпочитает большинство музыкантов;

Какой музыкант владеет наибольшим количеством инструментов и т.д.

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

Определяются объекты описания;

Определяются структуры этих объектов;

Выбирается тип структуры, отображающий отношения между объектами (табличная, иерархическая, сетевая);

Строится конкретная информационная структура.

7.1.4 Виды баз данных

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

Опыт использования БД позволяет выделить общий набор их рабочих характеристик:

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

Правильная организация - чем лучше структурирована БД, тем легче в ней найти необходимые сведения;

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

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

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

Лекция 7.2 Реляционные БД

Название «реляционные» (в переводе с англ. relation-отношение) связано с тем, что каждая запись в таблице содержит информацию, относящуюся только к одному конкретному объекту. БД могут содержать различные объекты, но основными объектами любой БД являются ее таблицы. Простейшая БД имеет хотя бы одну таблицу. Соответственно, структура простейшей БД тождественно равна структуре ее таблицы. Структуру таблицы простейшей БД составляют поля и записи. Если записей в таблице пока нет, значит, ее структура образована только набором полей. Однако, чаще, БД строятся на основе нескольких таблиц, связанных между собой через общие атрибуты.

7.2.1 Свойства полей БД

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

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

Тип поля - определяет тип данных, которые могут содержаться в данном поле;

Размер поля - определяет предельную длину (в символах) данных, которые могут размещаться в данном поле;

Формат поля - определяет способ форматирования данных в ячейках, принадлежащих полю;

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

Подпись - определяет заголовок столбца таблицы для данного поля (если подпись не задана, то в качестве заголовка столбца используется имя поля);

Значения по умолчанию - то значение, которое вводится в ячейку поля автоматически (средства автоматизации ввода данных);

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

Сообщение об ошибке - текстовое сообщение, которое выдается автоматически при попытке ввода в поле ошибочных данных (проверка ошибочности производится автоматически, если задано свойство Условие назначения);

Обязательное поле - свойство, определяющее обязательность заполнения данного поля при наполнении базы;

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

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

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

7.2.2 Типы полей

Таблицы БД, как правило, допускают работу с большим количеством разных типов данных. Например, БД MS Access работают со следующими типами данных:

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

Поле Мемо - специальный тип данных для хранения больших объемов текста (до 65535 символов). Физически текст не хранится в поле. Он хранится в другом месте БД, а в поле хранится указатель на него (поле для комментариев);

Числовой - тип данных для хранения действительных чисел;

Дата/время - тип данных для хранения календарных дат и текущего времени (от 100 до 9999 г.).

Денежный - тип данных для хранения денежных сумм;

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

Логический - тип для хранения логических данных (может принимать только одно из значений «Да» или «Нет»);

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

Гиперссылка - специальное поле для хранения адресов URL Web-объектов Интернет. При щелчке на ссылке автоматически происходит запуск броузера и воспроизведение объекта в его окне;

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

Лекция 7.3 Проектирование БД

7.3.1 Режимы работы с БД

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

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

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

7.3.2 Объекты БД

Кроме таблиц БД может содержать и другие типы объектов. Каждая СУБД может реализовывать свои типы объектов. Поэтому привести полную классификацию возможных объектов БД затруднительно. Рассмотрим основные типы объектов на примере СУБД Microsoft Access 2000. Эта СУБД позволяет создавать и использовать объекты семи различных типов.

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

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

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

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

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

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

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

Макросы. Эти объекты предназначены для автоматизации повторяющихся операций при работе с СУБД. В СУБД MS Access макросы состоят из последовательности внутренних команд СУБД и являются одним из средств автоматизации работы с базой.

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

7.3.3 Проектирование БД

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

Разработка технического задания

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

Демонстрируют заказчику работу аналогичной БД, после чего согласовывают спецификацию отличий;

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

При подготовке технического задания составляют:

Список исходных данных, с которыми работает заказчик;

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

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

7.3.4 Разработка структуры БД

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

Работа начинается с составления генерального списка полей - он может насчитывать десятки и даже сотни позиций.

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

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

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

Таблица 7.3.1 Сведения о процессор

Марка

модель

цена

поставщик

Адрес

Celeron

300А

56

ООО «Самшит»

123456, Москва, ул. Индустриальная, д.10

Celeron

333

60

ООО «Самшит»

123456, Москва, ул. Индустриальная, д.10

Intel

366

68

ТОО «Планета»

111222, Москва, ул. Промышленная, д.22

Celeron

406

95

ООО «Самшит»

123456, Москва, ул. Индустриальная, д.10

Intel

433

122

ЗАО «Кристина»

121212, Москва, пр. Технический, 44

В данной таблице в полях «Поставщик» и «Адрес» наблюдается повтор данных. Это говорит о том, таблицу надо поделить на две взаимосвязанные таблицы (табл. 7.3.2 и табл. 7.3.3).

Таблица 7.3.2 «Процессор»

Марка

модель

цена

Celeron

300А

56

Celeron

333

60

Intel

366

68

Celeron

406

95

Intel

433

122

В каждой из таблиц намечают ключевое поле. В качестве такового выбирают поле, данные в котором повторяться не могут. Например, для таблицы данных о студентах таким полем может служить индивидуальный шифр студента (№ зачетной книжки). Для таблицы 7.3.2 «Процессор» такого поля нет, но его можно создать искусственно комбинированием полей «Марка » и «Модель». Эта комбинация неповторима, т.к. в таблице незачем описывать одну и ту же модель.

Если же в таблице таких полей нет, которые можно было бы использовать как ключевые, всегда можно ввести дополнительное поле типа Счетчик - оно не может содержать повторяющихся данных по определению. Например, в таблицу 7.3.3 «Поставщики» можно ввести поле «Код поставщика».

Код поставщика

Наименование

Индекс

Город

Адрес

Телефон

1

ООО «Самшит»

123456

Москва

ул. Индустриальная, д.10

129-62-51

2

ТОО «Планета»

111222

Москва

ул. Промышленная, д.22

456-43-21

3

ЗАО «Кристина»

121212

Москва

пр. Технический, 44

175-84-22

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

Для того, чтобы можно было получать сведения о поставщиках процессоров, надо связать таблицы 7.3.2 и 7.3.3. Чтобы можно было осуществить связь, в таблице «Поставщики» поле «Код поставщика» надо сделать ключевым.

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

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

7.3.5 Создание объектов БД MS Access и режимы работы с ними

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

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

Из режима конструктора перейти в режим таблицы можно, щелкнув по кнопке [Таблицы] на панели инструментов.

В режиме конструктора и в режиме таблицы перемещение между полями осуществляется с помощью клавиши ТАВ, а также [вверх] или [вниз] по записям с помощью клавиш, гораздо удобнее использовать мышь.

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

Связь между таблицами позволяет:

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

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

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

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

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

Работа с запросами. Если структура БД хорошо продумана, то исполнители, работающие с базой, должны навсегда забыть, что в базе есть таблицы, а лучше, если они об этом вообще ничего не знают. Таблицы - слишком ценные объекты базы, чтобы с ними имел дело кто-либо, кроме разработчика базы.

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

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

Запросы лучше готовить вручную, с помощью Конструктора. Для этого есть специальный значок в окне БД. Он называется Создание запроса в режиме конструктора и открывает специальный бланк, называемый бланком запроса по образцу. Хотя запросы к таблицам пишутся на специальном языке программирования SQL, пользователя изучать его не обязательно, а большинство операций можно выполнить щелчками кнопкой мыши и приемом перетаскивания в бланк.

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

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

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

выделяют столбец щелчком на его заголовке (кнопку мыши отпускают);

еще раз щелкают на заголовке уже выделенного столбца (но кнопку не отпускают);

перетаскивают столбец в другое место.

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

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

Формирование условий отбора:

Текста: В большинстве случаев данные имеют текстовый тип. Для формирования условий отбора текста имеются некоторые специфические выражения.

а) для поиска полной текстовой строки, следует ввести ее в соответствующую ячейку бланка запроса нужного поля; Access заключит выражение в кавычки;

б) в качестве указателя произвольного текста используется символ «*». Одна звездочка интерпретируется как произвольное количество любых символов. В одном выражении может использоваться несколько звездочек. Условию «Ив*н*ов» удовлетворяют, например, фамилии: «Иванов», «Иванцов» и «Иванников».

в) если нужно отобрать записи, несоответствующие указанному тексту, перед ним вводится ключевое слово «NOT» или оператор сравнения «<>». Условие NOT Москва инициирует отбор всех городов, кроме Москвы.

г) в качестве заменителя одного произвольного символа применяется вопросительный знак «?». Например, по условию «к?т» могут быть найдены слова «кит» и «кот».

Чисел:

а) для отбора конкретной величины, в ячейку вводится число;

б) чтобы отобрать записи с величинами, меньшими либо меньшими или равными определенному значению, вводится <число или <=число;

в) чтобы отобрать записи с величинами большими либо большими или равными определенному значению, вводится >число или >=число;

г) для поиска величин, лежащих в некотором промежутке чисел (включая его начало и конец), вводят Between число1 and число2;

д) для поиска величин, лежащих в некотором промежутке чисел (исключая его начало и конец), вводится выражение >число1 and <число2.

Сложное условие отбора:

а) если осуществляется поиск по нескольким альтернативным условием для одного поля, их вводят в одну ячейку и соединяют ключевым словом OR (например, «Юг or Север»);

б) если имеется много возможных вариантов, используется ключевое слово IN (например, IN(Юг; Север; Восток).

в) если одно поле должно удовлетворять сразу двум критериям, используют ключевое слово AND (например, >5 and <10);

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

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

К ним относятся, прежде всего:

Запросы с параметром. Часто приходится иметь дело с запросами, устроенными в принципе одинаково, но имеющими некоторые различия в поставленных условиях отбора. В таком случае, чтобы каждый раз заново не создавать отдельный запрос, следует сформировать запрос с параметром. В запросе с параметром в бланк запроса в строке Условие отбора нужного поля вводят, выражение, например: <[Введите максимальное значение]. При выполнении запроса с параметром Access запрашивает у пользователя значение параметра для определения условий выборки.

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

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

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

в) Запрос на обновление. Можно изменит группу записей данных, удовлетворяющих определенному условию.

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

Итоговые запросы. Назначение их отдаленно напоминает итоговые функции электронных таблиц (производят математические вычисления по заданному полю и выдают результат).

Запросы на изменение, позволяют автоматизировать заполнение полей таблиц.

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

Специфические запросы SQL - запросы к серверу БД, написанные на языке запросов SQL.

Работа с формами

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

В форму могут быть внедрены рисунки, диаграммы, аудио (звук) и видео (изображение).

Режимы работы с формой:

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

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

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

Автоформа «в столбец» отображает все поля одной записи. Она удобна для ввода и редактирования данных.

Анализ прайс листа Запрос на выборку

Процессор

Частота

Цена

Celeron

366

68

AMД KБ-2

400

77

*

0

0

Запись 1

1

Из 2

Рис. 7.3.4 Автоформа «ленточная»

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

Существует три вида автоформ: «в столбец», «ленточные» и «табличные» (рис. 7.3.3-73.5)

Ленточная автоформа отображает одновременно группу записей. Её удобно использовать для оформления вывода данных.

Комплектующие

Процессор

Модель

Частота

Цена

Celeron

300А

300

58

Celeron

333

333

61

Celeron

366

366

68

Celeron

366А

366

85

Запись

1

Рис. 7.3.5 Автоформа табличная

Табличная автоформа по внешнему виду ничем не отличается от таблицы, на которой она основана.

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

На рисунках 7.3.3-7.3.5 отображены автоформы, основанные только на одном объекте. Такая форма называется Простой формой. В основу структуры формы можно закладывать поля нескольких таблиц или запросов. Если форма основывается на полях из нескольких связанных таблиц, то она называется сложной или составной и представляет собой композицию из нескольких форм.

Создание форм с помощью мастера

Автоматизированные средства предоставляет Мастер форм - специальное программное средство, создающее структуру формы в режиме диалога. Мастер форм можно запустить из окна БД щелчком на значке Создание форм с помощью мастера на панели Формы.

1. На первом этапе работы Мастера форм выбирают таблицы и поля, которые войдут в будущую форму.

2. На втором этапе выбирается внешний вид формы.

3. На третьем - выбирается стиль оформления формы.

4. На четвертом (последнем) - форма сохраняется под заданным именем. Здесь же можно включить переключатель [Изменить макет формы], который открывает только что созданную форму в режиме конструктора. Форма имеет три основных раздела: область заголовка, область данных и область примечания. Линии, разделяющие разделы, перетаскиваются по вертикали с помощью мыши - это позволяет изменять размеры разделов так, как требуется.

Структура формы

Форма2: Форма

. .

Заголовок формы

Наименование

Индекс

Город

Адрес

Телефон

. .

Область данных

Наименование

Индекс

Город

Адрес

Телефон

. .

Примечание формы

. .

Рис. 7.3.6 Структура формы, созданной мастером

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

Элементы управления формы представлены на Панели элементов, которая открывается щелчком на соответствующей кнопке панели инструментов или командой Вид Панель элементов. Выбор элемента управления выполняется одним щелчком на его значке в Панели элементов, после чего следующим щелчком в поле формы отмечается место, куда он должен быть поставлен. Вместе с элементом в поле формы вставляется его присоединенная подпись. По умолчанию, эта подпись стандартная, например для переключателя это Переключатель1, Переключатель2 и т.д. Редактированием свойства элемента управления (через контекстное меню) можно дать элементу управления более содержательную подпись.

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

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

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

В первую очередь, все элементы управления форм должны быть аккуратно выровнены. Это обеспечивается командой Формат Выровнять. Если нужно равномерно распределить элементы управления по полю формы, используются средства меню Формат Интервал по горизонтали или Формат Интервал по вертикали.

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

Существенную помощь при разработке дизайна формы оказывает вспомогательная сетка. Ее отображение включают командой Вид сетка. Автоматическую привязку к узлам сетки включают командой Формат Привязать к сетке.

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

Работа с отчетами

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

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

Средством автоматизированного создания отчетов является Мастер отчетов. Он работает в шесть этапов:

Выбор базовых таблиц или запросов, на которых отчет базируется;

Выбор полей, отображаемый в отчете;

Выбор полей группировки;

Выбор полей и методов сортировки;

Выбор формы печатного макета;

Выбор стиля оформления.

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

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

ДЕ8. Локальные и глобальные сети ЭВМ

Лекция 8.1 Программные и аппаратные компоненты компьютерных сетей

8.1.1 Определение и назначение

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

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

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

8.1.2 Классификация сетей

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

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

Региональные сети объединяют пользователей города, области и маленькой страны. Расстояние между узлами сети составляют 10-1000км.

Локальные сети ЭВМ связывают абонентов одного или близлежащих зданий одного предприятия, учреждения (обычно 10-100 компьютеров). Особенностью ЛВС является наличие одного высокоскоростного канала связи для передачи информации в цифровом виде. На больших расстояниях такой тип передачи неприемлем из-за неизбежного затухания высокочастотного сигнала. Существуют проводные и беспроводные (радио) каналы. Расстояния в ЛВС между ЭВМ небольшие - до 10км, а в радио канале - до 20км.

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

* обеспечение совместного использования аппаратных и программных ресурсов сети;

* обеспечение совместного доступа к ресурсам данных.

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

8.1.3 Сетевое программное обеспечение

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

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

Во второй концепции - популярной и чрезвычайно перспективной, называемой архитектурой «клиент-сервер», программное обеспечение ориентированно не только на коллективное использование ресурсов, но и на их обработку в месте размещения ресурсов по запросам пользователя. Программные системы архитектуры «клиент-сервер» состоят из 2 частей: программное обеспечение сервера и программное обеспечение пользователя-клиента. При этом в функции клиента входит:

Предоставление пользовательского интерфейса, ориентированного на определенные производственные обязанности и полномочия пользователя;

Формирование запросов к серверу;

Анализ ответов сервера на запросы и предъявление их пользователю.

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

8.1.4 Сетевая операционная система NET Ware

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

Для современных высокоразвитых ОС ПК вполне характерно наличие сетевых возможностей ( например, OS\2, Windows 95-2000 - XP, Windows NT, UNIX).

Для обеспечения функционирования ЛС, использующей файловый сервер, в настоящее время разработан целый ряд сетевых ОС. Одной из них является NET Ware фирмы Novel.

Основные функции сетевой ОС, реализуемые Net Ware:

Разделение дисков файлового сервера, обеспечивающее надежное хранение и доступ к файлам;

Управление коммуникацией при различных топологиях подсетей и коммуникационных протоколах. Так, рабочие станции UNIX, как правило, используют протокол TCP/IP, а ПК сети Net Ware - IPX/SPX, и сетевая ОС обеспечивает поддержку этих протоколов.

Обеспечение работы на сервере программ, расширяющих и дополняющих функции самой сетевой ОС. Эти программы называются загружаемыми модулями Net Ware (N2H, Net Ware, loadable Modules).


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.