Лекции по информатике
план-конспект занятия

Мицкевич Андрей Анатольевич

Лекции по информатике и информационным технологиям в ПД

Скачать:


Предварительный просмотр:

http://any-book.org/download/31199.html#_Toc216693455

Базы данных

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

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

  • иерархические;
  • реляционные;
  • объектно-ориентированные;
  • гибридные.

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

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

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

Гибридные СУБД совмещают в себе возможности реляционных и объектно-ориентированных баз данных.

Управление транзакциями

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

Вид моделей данных

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

Иерархическая модель данных

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

Сетевая модель данных

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

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

Понятие реляционный (англ. relation - отношение) связано с разработками известного американского специалиста в области систем баз данных Е. Кодда.

Эти модели характеризуются простотой структуры данных, удобным для

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

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

1. каждый элемент таблицы - один элемент данных;

2. все столбцы в таблице однородные, т.е. все элементы в столбце имеют одинаковый тип (числовой, символьный и т.д.) и длину;

3. каждый столбец имеет уникальное имя;

4. одинаковые строки в таблице отсутствуют;

5. порядок следования строк и столбцов может быть произвольным.

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

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

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

Управление транзакциями

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

Введение

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

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

                    позволять легко определять тенденции изменения важнейших показателей;

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

                    выполнять точный и полный анализ данных.

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

Среди наиболее ярких представителей систем управления базами данных можно отметить: Lotus Approach, Microsoft Access, Borland dBase, Borland Paradox, Microsoft Visual FoxPro, Microsoft Visual Basic, а также баз данных Microsoft SQL Server и Oracle, используемые в приложениях, построенных по технологии «клиент–сервер». Фактически, у любой современной СУБД существует аналог, выпускаемый другой компанией, имеющий аналогичную область применения и возможности, любое приложение способно работать со многими форматами представления данных, осуществлять экспорт и импорт данных благодаря наличию большого числа конвертеров. Общепринятыми, также, являются технологи, позволяющие использовать возможности других приложений, например, текстовых процессоров, пакетов построения графиков и т.п., и встроенные версии языков высокого уровня (чаще – диалекты SQL и/или VBA) и средства визуального программирования интерфейсов разрабатываемых приложений. Поэтому уже не имеет существенного значения, на каком языке и на основе какого пакета написано конкретное приложение, и какой формат данных в нем используется. Более того, стандартом «де–факто» стала «быстрая разработка приложений» или RAD (от английского Rapid Application Development), основанная на широко декларируемом в литературе «открытом подходе», то есть необходимость и возможность использования различных прикладных программ и технологий для разработки более гибких и мощных систем обработки данных. Поэтому в одном ряду с «классическими» СУБД все чаще упоминаются языки программирования Visual Basic 4.0 и Visual C++, которые позволяют быстро создавать необходимые компоненты приложений, критичные по скорости работы, которые трудно, а иногда невозможно разработать средствами «классических» СУБД. Современный подход к управлению базами данных подразумевает также широкое использование технологии «клиент–сервер».

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

Целью моего проекта является разработка программного продукта   прикладного уровня  «Склад» при использовании базы данных Microsoft Office Access, который облегчит учет поставок товаров в магазин.


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

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

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

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

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

В мире существует множество систем управления базами данных. Несмотря на то, что они могут по–разному работать с разными объектами и предоставляют пользователю различные функции и средства, большинство СУБД опираются на единый устоявшийся комплекс основных понятий. Это дает нам возможность рассмотреть одну систему и обобщить ее понятия, приемы и методы на весь класс СУБД. В качестве такого учебного объекта мы выберем СУБД Microsoft Access, входящую в пакет Microsoft Office.

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

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

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

Поле – основной и минимальный элемент данных.

Запись – несколько полей.

Связи – логические взаимосвязи между записями или полями.

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

1.2. Состав СУБД.

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

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

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

1.3. Структура простейшей базы данных.

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

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

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

1.4. Microsoft Access.

Microsoft Access – это интерактивная реляционная СУБД (relational database management system – RDBMS) для WINDOWS. Это программа, которую Вы можете использовать для хранения и извлечения данных в зависимости от отношений, которые Вы установили. Работа с ней упрощена посредством манипулятора мыши. Графические возможности оболочки производят большое впечатление при изготовлении высококачественных отчетов и распечаток. Все это благодаря поддержки  True–type  шрифтов и встраивания OLE–объектов(Object Linking and Embeding) в рамках среды WINDOWS. OLE – объект  представляет собой ссылку на определенную информацию, которая остается в своей первоначальной форме. OLE–объектом  может быть EXCEL – таблица, Paintbrush – иллюстрация  или  Sound – файл.

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

Access также предоставляет в распоряжение пользователя механизмы работы с базами данных различных форматов. К примеру, можно прямо обращаться к базам данных dBASE,  Paradox или Btrieve  без конвертирования их в формат, используемый  Access. В состав пакета  Access также входит язык Access Basic (встроенный диалект языка Visual  Basic), дающий возможность формирования специализированных систем  управления базами данных.

1.5. Свойства полей базы данных.

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

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

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

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

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

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

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

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

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

Сообщение об ошибке – текстовое сообщение, которое выдается автоматически при попытке ввода в поле ошибочных данных.

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

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

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

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

1.6. Типы данных.

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

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

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

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

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

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

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

Логический  – тип для хранения логических данных (могут принимать только два значения, например Да или Нет).

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

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

1.7. Безопасность баз данных.

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

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

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


2. Проектирование баз данных.

2.1. Режимы работы с базами данных.

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

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

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

2.2. Объекты базы данных.

2.2.1. Таблицы.

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

2.2.2. Запросы.

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

2.2.3. Формы.

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

2.2.4. Отчеты.

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

2.2.5. Страницы.

Это специальные объекты баз данных, реализованных в последних версиях СУБД  Microsoft Access (начиная с  Access 2000). Правда, более корректно их называть страницами доступа к данным. Физически это особый объект, выполненный в коде HTML, размещаемый на Web–странице и передаваемый клиенту вместе с ней. Сам по себе этот объект не является базой данной, но содержит компоненты, через которые осуществляется связь переданной Web – страницы с базой данных, остающейся на сервере. Пользуясь этими компонентами, посетитель Web – узла может просматривать записи базы в полях страницы доступа. Таким образом, страницы доступа к данным осуществляют интерфейс между клиентом, сервером и базой данных, размещенной на сервере. Эта база данных не обязательно должна быть базой данных Microsoft Access. Страницы доступа, созданные средствами Microsoft Access, позволяют работать также с базами данных Microsoft SQL Server.

2.2.6. Макросы и модули.

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

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

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

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

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

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

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

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

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

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

2.4. Разработка структуры базы данных.

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

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

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

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

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

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

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

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

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

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

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

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

2.5. Типы связей.

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

                    один к одному (1:1);

                    один ко многим (1 : М);

                    многие ко многим (М : М).

Связь один к одному (1:1) предполагает, что в каждый момент времени одному экземпляру информационного объекта А соответствует не более одного экземпляра информационного объекта В и наоборот.

При связи один ко многим (1:М) одному экземпляру информационного объекта А соответствует 0, 1 или более экземпляров объекта В, но каждый экземпляр объекта В связан не более чем с 1 экземпляром объекта А. Графически данное соответствие имеет вид.

Связь многие ко многим (М:М) предполагает, что в каждый момент времени одному экземпляру информационного объекта А соответствует 0, 1 или более экземпляров объекта В и наоборот.


3. Создание базы данных «Склад»

3.1. Создание таблиц

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

                    Активизируйте окно Microsoft Access и выберите в меню File директиву New Database (или щелкните кнопкой New Database в строке пиктограмм). Microsoft Access высвечивает диалоговое окно New Database  и автоматически дает имя Вашей базе данных , которое Вы можете заменить.

                    В строке File Name, напечатайте Ваш вариант имени базы данных. Оно может содержать до 8 символов без пробелов. Microsoft Access автоматически добавляет расширение .MDB к имени Вашей базы данных, если Вы этого не сделали.

                    Если Вы хотите хранить базу данных в определенном месте выберите соответствующую директорию в списке директорий Directories list.

                    Нажмите на кнопку  OK.

Microsoft Access создает пустой файл базы данных и открывает окно базы данных Database window.

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

                    Если необходимо, активизируйте Microsoft Access.

                    Из меню File  выберите директиву Open Database (или щелкните кнопкой Open Database в строке пиктограмм ). Microsoft Access  высвечивает диалоговое окно Open Database.

                    В строке File Name  выберите соответствующее имя базы данных, предварительно выбрав соответствующую директорию в списке директорий Directories list  и соответствующий накопитель в строке Drives.

                    Нажмите на кнопку OK.

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

ТАБЛИЦА – это набор записей (строк таблицы), состоящих из отдельных полей(колонок таблицы), в которых хранится информация и составляющая, собственно, содержание базы данных.

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

1.     С помощью Конструктора таблиц.

                    В окне базы данных щелкните на кнопке Table.

                    Выберите кнопку New в окне базы данных.

Microsoft Access высветит диалоговое окно New Table.  

                    Выберите кнопку TableWizards(Конструктора таблиц).

                    В диалоговом окне Конструктора следуйте указаниям по добавлению полей в Вашей таблице.

2.     Без помощи Конструктора.

                     В окне базы данных щелкните на кнопке Table (или выберите директиву Tables в меню View).

                    Нажмите кнопку New в окне базы данных.

Microsoft Access высветит диалоговое окно New Table.

                     Нажмите кнопку New Table.

После создания таблицы окно Microsoft Access будет выглядеть так:

http://any-book.org/download/31199.files/image002.jpg

Рис 1. Таблица изделий

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

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

Access различает следующие типы данных полей:

                    Text. Текстовые поля  содержат текст, длина которого не может быть более 255 символов. Реальная длина поля устанавливается с помощью параметра Field Size (размер поля).

                    Memo. В Memo–полях сохраняется текст длиной до 32000 символов.  Поля этого типа данных не могут индексироваться.

                    Number.        Числовые поля содержат произвольные числовые значению. Диапазон допустимых значений определяется параметром Field Size (размер поля).

                    Date/Time.         Поля даты/времени содержат значения даты и времени в диапазоне от  100 до 9999 года.

                    Currency.        В денежных полях можно хранить числа с точностью до 15 разрядов слева от запятой и четырех десятичных разрядов справа от запятой.

                    Counter.        Поле счетчика содержит число, которое автоматически увеличивается Access на 1, когда в таблицу добавляется новый блок данных.  

                    Yes/No.   В таких полях сохраняются значения Да или Нет. Поля данного типа не могут индексироваться.

                    OLE Object. В OLE – полях помещаются объекты, такие как, например, Excel–таблица или Microsoft Draw – графика, обработанные OLE – сервером. Размер поля может быть до 128 МБ. Поля данного типа не могут индексироваться.

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

                    Field Size        Размер поля устанавливает максимальную длину текстового поля или способ представления чисел в поле типа Number.

                    Format        Формат определяет способ представления данных. Наряду с предопределенными форматами допускается использование собственных форматов пользователя.

                    Decimal Places        Десятичные разряды устанавливают количество разрядов справа от десятичной запятой.

                    Caption        Заголовок  определяет надпись, которая будет использоваться в качестве наименования поля в формуляре или отчете. Если для этого параметра не будет задано никакое значение, то в качестве надписи будет по умолчанию использовано имя поля.

                    Default Value        Значение по умолчанию устанавливает значение, которое будет автоматически введено в поле при генерации блока данных.

                    Validation Rule        Ограничение ввода – правило, ограничивающее допустимые для ввода в поле данные.

                    Validation Text        Сообщение о нарушении – текст, возникающий при попытке ввести в поле данные, не удовлетворяющие правилу, сформулированному в Validation Rule.

                    Indexed        Признак индексирования.

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

Переупорядочение полей:

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

                    Щелкните в селекторной колонке опять и удерживая правую кнопку мыши нажатой перетащите указатель мыши в нужную позицию.

Microsoft Access расположит маркированное Вами поле в новом месте.

Удаление полей.

                    Откройте таблицу в режиме проектирования.

                    Маркируйте подлежащее удалению поле, щелкнув кнопкой мыши в селекторной колонке.(Или используйте клавиши управления курсором и подведя указатель к соответствующему полю нажмите комбинацию клавиш Shift+Spacebar).

                    Из меню Edit выберите директиву Delete Row (или нажмите кнопку Delete Row в строке пиктограмм).

Microsoft Access удалит поле и все его данные из Вашей таблицы.

Вставка полей.

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

                    Из меню Edit выберите директиву Insert Row(или выберите кнопку Insert Row в строке пиктограмм).

Microsoft Access вставит пустое поле над текущей строкой.

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

Microsoft Access автоматически создает индекс для первичного ключа. Этот индекс ускоряет процессы запросов и другие операции.

Когда Вы просматриваете записи, Microsoft Access покажет их упорядоченными, по первичному ключу по умолчанию.

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

Установка первичного ключа.

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

                    В меню Edit выберите директиву Set Primary Key (или нажмите кнопку Set Primary Key в строке пиктограмм).

У полей определенных как первичный ключ слева от строки добавится идентификатор в виде ключа.

3.2. Вставка объектов

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

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

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

Встраивание объектов.

                    В меню Edit обратитесь к директиве Insert Object (Эта директива будет доступна в том случае, если в спецификации таблицы активному в данный момент полю был присвоен тип OLE Object.)

                    В списке Object Type выберите необходимую Вам, поддерживающую OLE интерфейс прикладную программу.

                     Если объект уже существует, щелкните мышью на кнопке File , чтобы открыть диалоговое окно Insert Object from File.

                     Выберите нужный файл и нажмите кнопку OK.

Связывание объектов.

o        В меню Edit выберите директиву Past Link. (Однако эта директива становится доступной лишь после того , как подлежащий связыванию объект будет скопирован, т.е. помещен в буфер обмена Clipboard .)

o        Нажмите кнопку OK.

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

3.3. Установка связи между таблицами.

Установить связь между таблицами можно:

                    В меню Edit выберите директиву Relationships, или щелкните мышью на кнопке Relationships в строке пиктограмм. Откроется  окно Relationships , затем окно Add Table.

                    Если окно Add Table не появилось, выберите соответствующую директиву в окне Relationships.

                    В строке Table/Query выберите таблицу, для которой вы хотите создать связь. Для выбора более чем одной таблицы одновременно, удерживая клавишу Ctrl, выберите все необходимые таблицы. Чтобы выбрать все или блок таблиц отметьте первую таблицу, а затем,  удерживая клавишу  Shift,  укажите последнюю, нажмите кнопку Add. Вы также можете добавлять таблицы, перетаскивая их с помощью мыши из окна базы данных в окно отношений.

                    Теперь с помощью мыши перетащите поля первичного ключа первичной таблицы в соответствующее положение в связываемой таблице. Microsoft Access выдаст диалоговое окно Relationships.

                    Проверьте имена полей подлежащих связыванию, отредактируйте при необходимости. Установите соответствующие опции, например, тип отношения: One (один к одному) или Many (один ко многим).

                    Нажмите кнопку Create.

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

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

http://any-book.org/download/31199.files/image004.jpg

Рис 2. Схема данных

Эти связи нам нужны для облегчения поиска и выборки информации. Например при просмотре списка университетов Access автоматически устанавливает указатель (т.е. делает запись текущей)  на первую запись в таблице Faculties содержащую в поле Namber_of_univer такое же число, что и в текущем поле ID таблицы Univer.

Теперь мы можем заполнить какой–либо информацией эти три таблицы. Для этого в окне Базы Данных нажмите кнопку Open или в меню View выберите опцию Datasheet. И начинайте заполнять, поля с типом Cоunter заполняются автоматически. После заполнения, содержимое этих таблиц может выглядеть, например, так:

http://any-book.org/download/31199.files/image006.jpg

Рис 3. Таблица «Склады»

Таким образом,  Access позволяет осуществлять различную обработку информации.

3.4. Создание форм

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

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

http://any-book.org/download/31199.files/image008.jpg

Рис 4. Главная форма

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

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

http://any-book.org/download/31199.files/image010.jpg

Рис 5. Форма «Отгрузки»

http://any-book.org/download/31199.files/image012.jpg

Рис 6. Форма «Информация о складе»

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

3.5. Создание отчетов

Кроме формуляров Access предоставляет специальное средство для распечатки выбранной информации – Отчеты. Отчеты отличаются от формуляров одним: в отчете нельзя редактировать данные. Давайте создадим один, но основанный только на одной таблице Отгрузки. Для этого также воспользуемся Конструктором отчетов, т.к. это более легкий и понятный способ построения чего–либо.  Для этого из предлагаемых запросов и таблиц выберем таблицу Отгрузки, потом выберем опцию группировки Groups/Totals, порядок полей в отчете оставим такой же, сгруппируем, очередность сортировки в группах сделаем по оставшемуся полу ID, выберем стиль формы отчета Presentation и расположение на листе бумаги Portrait, введем имя для отчета Отгрузки по кварталам и нажмем кнопку Finish. Access создаст отчет:

http://any-book.org/download/31199.files/image014.jpg

Рис 7. Отчет

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


Заключение

В рамках курсового проекта по дисциплине «Системы баз данных» был разработан программный продукт   прикладного уровня  «Склад» при использовании базы данных Microsoft Office Access.

В результате выполненной разработки можно сделать следующие выводы:

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

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

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

                    автоматизация контроля поставок;

                    возможность длительного хранения информации о поставках на предприятие большого срока давности, для возможности более полного расчета эффективности деятельности предприятия;

                    своевременное получение информации о сроках оплаты за осуществленные поставки и продажи товара.


Список литературы

1.                 Вейскас Д. Эффективная работа с Microsoft Access 7.0 «Microsoft Press», 1997.

2.                 Вудкок Дж., Янг М. Эффективная работа с Microsoft Office 95 «Microsoft Press».

3.                 Кириллов В.В. Основы проектирования реляционных баз данных. Учебное пособие. – СПб.: ИТМО, 1994.

4.                 Потапкин А.В. Основы Visual Basic для пакета Microsoft Office:М, «Эком», 1995.

Рекламные ссылки


По теме: методические разработки, презентации и конспекты

Информатика и информация (лекция)

Лекция по информатике и ИКТ тема: "Информатика и информация"...

Лекции. Информатика и ИКТ

Теоретический материал по дисциплине "Информатика и ИКТ"...

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

1.1. Область применения  рабочей программыРабочая программа учебной дисциплины «Основы теории информации»  является частью  основной профессиональной образовательной программы...

КОНСПЕКТ ЛЕКЦИЙ «ОСНОВЫ ПРОЕКТИРОВАНИЯ БАЗ ДАННЫХ» для специальностей 09.02.04 «Информационные системы (по отраслям)» 09.02.05 «Прикладная информатика (по отраслям)»

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

Лекции по информатике и информационным технологиям в профессиональной деятельности

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

Лекции по информатике ГАПОУ СО "СКВТСИС"

Лекции на период карантина весны 2020 года...

Лекция по информатике для 1 курса по теме: Безопасность, гигиена, эргономика, ресурсосбережение

Лекция по информатике для 1 курса по теме: Безопасность, гигиена, эргономика, ресурсосбережение...