Чебоксарский политехнический институт (филиал)
ФГБОУ ВПО МАМИ
Строительный факультет
Кафедра информационных технологий и программирования
по информатике
студент 1-го курса, шифр 213082
Чебоксары — 2013
1. Базы данных и СУБД
1.1 Понятие банка данных, базы данных и СУБД
Существует множество различных систем управления базами данных, именуемые в последующем «СУБД», такие как: IMS, Cetop, Oracle, Clipper, FoxPro, Access. Но перед тем как приступить к изучению СУБД, рассмотрим несколько основных понятий.
Данные — систематизированная и структурированная каким-либо образом информация.
Под визуализацией информации базы понимается отбор отображаемых данных в соответствии с заданным критерием, их упорядочение, оформление и последующая выдача на устройства вывода или передачи по каналам связи.
В данной работе мы будем рассматривать только логическое представление данных, т.е. с точки зрения прикладного программиста и пользователя. С их точки зрения данные делятся на записи, те в свою очередь делятся на поля, и между полями, а так же и между записями могут быть установлены различные связи.
Поле — основной и минимальный элемент данных.
Запись — несколько полей.
Связи — логические взаимосвязи между записями или полями.
База данных — это набор данных, который связан с определенной темой или назначением.
База данных может быть определена как совокупность предназначенных для машинной обработки и хранения данных, которые могут использоваться одним или несколькими пользователями.
В зависимости различных моделей данных базы данных могут быть иерархическим, сетевыми и реляционными. Дальше мы будем рассматривать только реляционные базы данных.
СУБД (система управления базами данных) — это программа, которая управляет данными, осуществляет хранение, извлечение, поиск, редактирование информации, хранимой в базе данных. СУБД также подразделяются на иерархические, сетевые и реляционные в зависимости от данных которые они обрабатывают.
Таблица — это набор записей (строк), состоящих из отдельных полей (столбцов), в которых хранится информация и составляющая, собственно, содержание базы данных.
Таблицы являются основной формой представления информации, содержащейся в базе данных. Без таблицы нельзя спроектировать формуляр, на базе таблиц составляются запросы и отчеты.
Хранение управленческой информации
... информацию о предметной области, необходимую и достаточную для проектирования базы данных, но она не привязана к определенной СУБД. ... [10, c.111]. 1.2 Логические основы накопления и хранения данных. Базы данных Цель любой информационной технологии заключается в обработке сведений ... связи между ними и их свойства. Поэтому необходимо четко поставить цель данной БД, а также установить, какую информацию ...
Таблицы баз данных, как правило, допускают работу с гораздо большим количеством разных типов данных. Так, например, базы данных Microsoft Access работают со следующими типами данных.
Текстовый — тип данных, используемый для хранения обычного неформатированного текста ограниченного размера (до 255 символов).
Числовой — тип данных для хранения действительных чисел.
Поле Мемо — специальный тип данных для хранения больших объемов текста (до 65 535 символов).
Физически текст не хранится в поле. Он храниться в другом месте базы данных, а в поле храниться указатель на него, но для пользователя такое разделение заметно не всегда.
Дата/время — тип данных для хранения календарных дат и текущего времени.
Денежный — тип данных для хранения денежных сумм. Теоретически, для их записи можно было бы пользоваться и полями числового типа, но для денежных сумм есть некоторые особенности (например, связанные с правилами округления), которые делают более удобным использование специального типа данных, а не настройку числового типа.
Счетчик — специальный тип данных для уникальных (не повторяющихся в поле) натуральных чисел с автоматическим наращиванием. Естественное использование — для порядковой нумерации записей.
Логический — тип для хранения логических данных (могут принимать только два значения, например Да или Нет).
Гиперссылка — специальное поле для хранения адресов URL Web-объектов Интернета. При щелчке на ссылке автоматически происходит запуск браузера и воспроизведение объекта в его окне.
Мастер подстановок — это не специальный тип данных. Это объект, настройкой которого можно автоматизировать ввод данных в поле так, чтобы не вводить их вручную, а выбирать их из раскрывающегося списка.
При размещении базы данных на ПК, который не находится в сети, база данных всегда используется в монопольном режиме. Даже если базу данных используют несколько пользователей, они могут работать с ней только последовательно. Однако работа на изолированном ПК с небольшой базой данных в настоящий момент становится уже не характерной для большинства приложений. База данных отражает информационную модель реальной ПО, она растет по объему, следовательно, резко увеличивается количество задач, решаемых с помощью этой базы данных и в соответствии с этим увеличивается количество приложений, работающих с единой базой данных. ПК объединяются в локальные сети, и необходимость распределения приложений, работающих с единой базой данных по сети, является несомненной.
Параллельный доступ к одной базой данных нескольких пользователей, в том случае, если она расположена на одной машине, соответствует режиму распределенного доступа к центральной базе данных. Такие системы называются системами распределенной обработки данных.
Если же база данных расположена на нескольких ПК, распределенных в сети, и к ней возможен параллельный доступ нескольких пользователей, то мы имеем дело с параллельным доступом к распределенным базам данных. Такие системы называются системами распределенных баз данных.
1.2 Функции СУБД
Современная система управления базами данных должна выполнять следующие функции:
Определение данных
Применение базы данных для хранения и обработки экономической информации
... хранения данных были разработаны базы данных и системы управления базами данных (СУБД). В дальнейшем увеличение объемов хранимых данных, использование разных устройств для хранения, а также усложнение методов управления данными привело к созданию распределенной обработки данных, информационных хранилищ. Для хранения и обработки ...
СУБД должна допускать определения данных (внешние схемы, концептуальную схему, внутреннюю схему, а также все связанные отображения) в исходной форме и преобразовывать эти определения в форму соответствующих объектов, т.е. СУБД должна включать в себя компонент языкового процессора для различных языков определения данных.
Обработка данных
СУБД должна уметь обрабатывать запросы пользователя на выборку, изменение или удаление соответствующих данных в базе данных или на добавление новых данных в базу данных, т.е. СУБД должна включать в себя компонент процессора языка обработки данных (ЯОД).
Запросы бывают «планируемые» и «не планируемые».
Планируемый запрос — это запрос, необходимость которого предусмотрена заранее. АД должен настроить физический проект базы данных таким образом, чтобы гарантировать достаточное быстродействие для таких запросов. Он характерен для «операционных приложений».
Не планируемый запрос — это специальный запрос, необходимость которого не была предусмотрена заранее. Он характерен для приложений «поддержки решений».
Безопасность и целостность данных
СУБД должна контролировать пользовательские запросы и пресекать попытки нарушения правил безопасности и целостности, определенных АБД.
Для пользователей информационной системы недостаточно, чтобы база данных просто отражала объекты реального мира. Важно чтобы такое отражение было однозначным и непротиворечивым.
Для того чтобы гарантировать корректность и взаимную непротиворечивость данных, на базу данных накладываются некоторые ограничения, которые называют ограничениями целостности.
Восстановление данных и дублирование.
Восстановление и дублирование данных осуществляется СУБД или администратором.
Введение словаря данных
Словарь данных — это исчерпывающий набор таблиц или файлов, представляющий собой каталог всех описаний данных. Также он может содержать информацию о пользователях, привилегиях и т.д., доступную только администратору базу данных. Словарь данных является центральным источником информации для СУБД, АБД всех пользователей.
Производительность
СУБД должна выполнять все указанные функции с максимально возможной эффективностью.
В целом назначением СУБД является предоставление пользовательского интерфейса с базой данных.
1.3 Модели данных, поддерживаемые СУБД
Модели данных — представление данных и их взаимосвязей, описывающих понятия проблемной среды. Модели данных используются как для концептуального, так и для логического и физического представления данных.
Существуют, по крайней мере, три модели данных: иерархическая, сетевая, реляционная.
Иерархическая модель данных состоит из нескольких записей, одна из которых определена как корневая. Примером иерархической модели могут служить деревья:
Где КЛИЕНТ, ЗАКАЗ, ТОРГОВЫЙ АГЕНТ являются записями (КЛИЕНТ — корневая запись), НОМЕР, ФАМИЛИЯ, ИМЯ, ОТЧЕСТВО — поля записи КЛИЕНТ, линиями показаны связи.
Дерево — ориентированный граф (граф — пара множеств, одно из которых описывает множество вершин, а другое множество связей между ними) где все вершины, кроме корня, находятся в голове только одной дуги, корень не находится в голове ни одной из дуг и связан с вершиной дерева.
Между записями в иерархии могут быть определены связи: “один ко многим”, или “один к одному”, где запись, соответствующая элементу “один” указанной связи, определяется как исходная, а соответствующая элементу “много” — как порожденная.
Сетевая модель данных подобна иерархической, но является более общей моделью, в том смысле, что между записями присутствуют связи “много ко многим” и “много к одному”, а так же здесь нет корневого узла, т. е. любая запись может быть корневой.
Сетевая модель:
Где КЛИЕНТ, ЗАКАЗ, ТОРГОВЫЙ АГЕНТ являются записями, НОМЕР, ФАМИЛИЯ, ИМЯ, ОТЧЕСТВО — поля записи КЛИЕНТ, линиями показаны связи.
Реляционная модель данных является одним из самых простых видов представления информации и самой легкой концепцией для понимания. Эта модель представляет собой данные упорядоченные в таблицы, чаше всего двухмерные. Таблицы такого вида называются отношениями (реляциями) и каждая таблица представляет собой отдельный файл.
Реляционная модель:
НОМЕР — КЛИЕНТА |
ФАМИЛИЯ — КЛИЕНТА |
ИМЯ — КЛИЕНТА |
ОТЧЕСТВО — КЛИЕНТА |
|
Поле
НОМЕР — ЗАКАЗА |
НАЗВАНИЕ — ЗАКАЗА |
||||
НОМЕР — ТОРГОВОГО АГЕНТА |
ФАМИЛИЯ |
ИМЯ |
ОТЧЕСТВО |
ПОСТАВЛЯЕМЫЙ ТОВАР |
|
Каждая таблица состоит из столбцов и строк, каждому столбцу присвоено однозначное имя, один элемент столбца называется полем, а строка называется записью. Данный пример показывает, что и сетевая модель, и иерархическая могут быть приведены к реляционной.
1.4 Области применения баз данных в экономике
Автоматизированные информационные системы (АИС), основу которых составляют базы данных, появились в 60-х годах в военной промышленности и в бизнесе — там, где были накоплены значительные объемы полезных данных. Первоначально автоматизированные информационные системы были ориентированы лишь на работу с информацией фактического характера — числовыми или текстовыми характеристиками объектов. Затем, по мере развития техники, появилась возможность обрабатывать текстовую информацию на естественном языке.
Принципы хранения разных видов информации в АИС сходны, но алгоритмы ее обработки определяются характером информационных ресурсов. Соответственно были выделены два класса АИС: документальные и фактографические.
Документальные АИС служат для работы с документами на естественном языке. Наиболее распространенный тип документальной АИС — информационно-поисковые системы, предназначенные для накопления и подбора документов, удовлетворяющих заданным критериям. Они могут выполнять просмотр и подборку монографий, публикаций в периодике, сообщений пресс-агентств, текстов законодательных актов и т.д.
Фактографические АИС оперируют фактическими сведениями, представленными в формализованном виде. Фактографические АИС используют для решения задач обработки данных.
Обработка данных — специальный класс решаемых на ЭВМ задач, связанных с вводом, хранением, сортировкой, отбором и группировкой записей данных однородной структуры. Задачи этого класса решаются при учете товаров в магазинах и на складах, начислении заработной платы, управлении производством, финансами, телекоммуникациями.
Различают фактографические АИС оперативной обработки данных, подразумевающие быстрое обслуживание относительно простых запросов от большого числа пользователей, и фактографические АИС аналитической обработки, ориентированные на выполнение сложных запросов
1. Microsoft Access
MS Access (от англ. access-доступ) — это функционально полная реляционная СУБД. Кроме того, MS Access — одна из самых мощных, гибких и простых в использовании СУБД. В ней можно создавать большинство приложений, не написав ни единой строки программы, но если нужно создать нечто более сложное, то на этот случай MS Access предоставляет мощный язык программирования — Visual Basic Aplication.[2]
Популярность СУБД MS Access обусловлена следующими причинами:
- Access является одной из самых легкодоступных и понятных систем как для профессионалов, так и для начинающих пользователей, позволяющая быстро освоить основные принципы работы с базами данных;
- система имеет полностью русифицированную версию;
- полная интегрированность с пакетами MS Office: Word, Excel, Power Point, Mail;
- идеология Windows позволяет представлять информацию красочно и наглядно;
- возможность использования OLE технологии, что позволяет установить связь с объектами другого приложения или внедрить какие-либо объекты в базу данных Access;
- технология WYSIWIG позволяет пользователю постоянно видеть все результаты своих действий;
- широко и наглядно представлена справочная система;
- существует набор «мастеров» по разработке объектов, облегчающий создание таблиц, форм и отчетов.
В Access используются реляционные базы данных, в которые входят несколько таблиц и между ними устанавливаются связи. Эти связи позволяют ввести данные в одну таблицу и связать их с записью в другой таблице через идентификатор. Хранение данных в связанных таблицах имеет ряд преимуществ: отпадает необходимость многократного ввода одних и тех же данных в большое число записей, объем базы данных становится меньше, уменьшается количество ошибок при вводе, упрощается процедура обновления данных. Для просмотра связей между таблицами конкретного приложения в Access используется команда — Схема данных из меню Сервис.
Работа с базой данных подразделяется на две фазы: фазу конструирования базы данных и фазу управления данными. В большинстве случаев фаза конструирования выполняется в режиме конструктора; при этом возможно применение, как режима конструктора таблицы, так и режима конструктора формы. После завершения фазы конструирования появляется возможность использовать различные объекты базы данных для управления реальными данными, также становится возможным ввод данных, их редактирования, формирования запросов в базе данных с целью извлечения части данных, создание отчетов MS Access. При работе с различными объектами базы данных в процессе конструирования и использования этих объектов пользователь переходит из одного режима в другой, при этом меню панели инструментов также изменяются в соответствии с выполняемыми задачами. управление база данный экономика
Помимо работы с данными в режиме таблицы эффективным инструментом для ввода, просмотра и редактирования данных в полях базы являются формы. Как правило, форма отображает на экране одновременно только одну запись. Большим преимуществом формы является ее способность одновременно отображать данные из нескольких таблиц.
До непосредственного создания новой базы данных в компьютере необходимо выполнить несколько предварительных операций:
- определить содержимое полей;
- выбрать тип данных для каждого поля;
- продумать структуру базы данных;
- установить связи между таблицами;
- определить конкретные поля, используемые в качестве ключевых индексированных полей. [3]
Ключевое поле состоит из одного или нескольких полей, которые однозначно идентифицируют каждую запись в таблице.
При проектировании структуры базы следует иметь в виду, что Access позволяет использовать вычисляемые поля, значения которых являются результатами вычислений над хранящимися в базе данными.
При запуске Access на экран выводится диалоговое окно, предлагающее либо открыть имеющуюся базу данных, либо создать новую. При этом значительную помощь при создании новой базы данных может оказать Мастер базы данных.
Access имеет в своем составе также набор Мастеров, ориентированных на оказание помощи при создании конкретных типов объектов базы данных. Так, мастер таблиц предлагает последовательность шагов по созданию таблицы. Он предоставляет широкий выбор специализированных таблиц (например, Контакты, Товары и др.), каждая из которых имеет набор часто используемых полей.
Форма представляет собой окно с набором элементов управления, имеющихся визуальными объектами и служащими для ввода и изменения данных выполнения других определенных действий.
В Access есть инструмент — страница доступа к данным похожая на форму. Она также отображает ряд элементов управления и дает доступ к полям одной или нескольких таблиц или запросов к базе данных. Однако, в отличие от формы, она хранится не в нутрии базы данных, а в отдельном файле формы HTML, что позволяет открывать файл как непосредственно в Access, так и в браузере. При этом браузер позволяет перемещаться по записям в источнике данных таблицы или запроса и добавлять, модифицировать и удалять данные так же, как это делается в Access. При размещении такого файла на Web-узле с базой данных могут работать другие пользователи, имеющие выход в сеть Интернет.
Помимо создания простых запросов (запросов на выборку) Access позволяет организовать ряд более сложных видов запросов. Для формирования простых запросов целесообразно воспользоваться услугами Мастера простых запросов. Несколько более сложным является запрос, позволяющий получить некоторые обобщающие итоги.
В ряде случаев необходимо использование запросов, вносящих при этом выполнении изменения в данные, находящиеся в базе данных. Access позволяет выполнить четыре типа запросов на изменения данных. Наиболее опасным из них по своим последствиям является запрос на удаление, который применяется для удаления всех записей таблице, отвечающих заданным критериям. Целесообразно перед его использованием сначала выполнить запрос на выборку, в котором условие используется только для отбора записей. Это позволяет предварительно просмотреть список удаляемых записей.
Запрос на создание таблицы полезен для создания резервных копий определенной части базы данных.
Запросы на добавление копирует записи из одной или нескольких таблиц в другое место, но при этом не создает новых таблиц, а использует существующую таблицу.
Запросы на обновления позволяют изменить значение любого поля базы данных для записей, удовлетворяющих указанным критериям.
Если запросы на выборку и перекрестные запросы служат для просмотра и анализа данных, то использование последних четырех типов запросов предоставляет иные средства для изменения данных.
2. Microsoft Visual FoxPro 7.0
Visual FoxPro 7.0 представляет собой новую версию широко известной системы управления базами данных (СУБД) Visual FoxPro, которая функционирует в среде Windows и представляет собой полноценное 32-х разрядное приложение. Visual FoxPro является объектно-ориентированным, визуально-программируемым языком, управляемым по событиям и в полной мере соответствует новым требованиям, предъявляемым к современным средствам проектирования.
В Visual FoxPro имеется несколько уровней разработки приложений. Если вам необходимо в кратчайшее время разработать не очень сложное приложение, вы можете воспользоваться средствами быстрой разработки приложений, которые представлены многочисленными мастерами для создания форм, отчетов, почтовых этикетов и многого другого. Если вам не достаточно средств, предоставляемых мастерами, используйте конструкторы для создания форм отчетов, меню и запросов. При разработке крупных проектов целесообразно создавать пользовательские классы и использовать их при создании разнообразных форм ввода данных.
Visual FoxPro является системой управления реляционными базами данных, которые в настоящее время являются наиболее распространенными. В данной версии реализованы все атрибуты реляционных СУБД. В Visual FoxPro существует понятие базы данных, которая содержит совокупность таблиц. В базе данных вы можете определить условия целостности данных с помощью первичных и внешних ключей таблиц. В Visual FoxPro реализованы триггеры и хранимые процедуры, которые позволяют централизованно обрабатывать события, возникающие при любых изменениях в базе данных.
Отличительной особенностью Visual FoxPro 7.0 является совместимость с предыдущими версиями FoxPro, что позволяет достаточно просто перенести приложения, созданные ранее, в более привлекательную среду Windows.
Visual FoxPro использует средства Windows, с помощью которых приложение Visual FoxPro может обмениваться данными с другими приложениями Windows.
Опытному пользователю предоставляются широчайшие возможности по обработке информации с помощью полнофункциональной интегрированной среды программирования на языке Visual FoxPro.
Visual FoxPro поддерживает доступ к наиболее популярным SQL-серверам баз данных — Microsoft SQL Server, Oracle, Informix и другим, используя стандарт ODBC.
В мире насчитывается более 50 типов СУБД для IBM PC и совместимых с ними компьютеров. Традиционно одной из наиболее популярных из них в России является Visual FoxPro, новая версия которого Visual FoxPro 7.0 содержит дополнения, ускоряющие разработку приложений.
Новые возможности Visual FoxPro 7.0
Visual FoxPro — постоянно развивающая система. По сравнению с предыдущей версией, в Visual FoxPro 7.0 расширены функциональные возможности, улучшены имеющиеся средства, касающиеся среды разработки.
Visual FoxPro 7.0 поддерживает технологию IntelliSense, облегчающую создание программного кода. Суть этой технологии состоит в том, что при вводе операторов, свойств и функций FoxPro предлагает на выбор возможные варианты написания, что уменьшает количество вводимого вручную кода и избавляет разработчика от необходимости лишний раз обращаться к документации.
Большие изменения коснулись редактора Visual FoxPro. Теперь можно:
Использовать для выделения текста на выбор пробел или табулятор