Назначение и основные возможности Access
Курсовая работа
На тему: Программа контроля знаний обучаемого.
Выполнил:
Студент 3 курса
Группы 4334
Егоров А. И.
Проверил:
Преподаватель СПО ИТКИ
Котов М.А.
Подпись___________
Казань 2014
Содержание
Содержание. 2
Цель работы.. 3
Введение. 4
Теоретическая часть. 5
Некоторые понятия и определения БД.. 5
Модели данных. 7
Назначение и основные возможности Access. 14
Таблицы и поля (объекты DataTable и DataColumn) 16
Объекты DataRelation. 16
Строки (объект DataRow) 16
DataAdapter 16
Объекты DBConnection и DBCommand. 16
DataGridView.. 17
OleDbConnection - класс. 21
Практическая часть. 23
База данных. 23
Пример работы программы.. 27
Список литературы.. 32
Приложение. 33
Класс Form1. 33
Цель работы
Цель этой работы является создание программы контроля знаний обучаемого. Работа с базами данных Access, а так же с оконным приложением.
Разработка системы управления базами данных и удобного быстрого доступа к информации, на языке программирования C#.
Введение
База данных — представленная в объективной форме совокупность самостоятельных материалов, систематизированных таким образом, чтобы эти материалы могли быть найдены и обработаны с помощью электронной вычислительной машины (ЭВМ).
Проектируемое приложение предназначено для удобной работы с проектами и рабочими, позволяет осуществлять выполнение таких операция как добавление, редактирование, удаление, а так же просмотр подробной информации.
С понятием базы данных тесно связано понятие системы управления базой данных. Это комплекс программных средств, предназначенных для создания структуры новой базы, наполнение ее содержимым, редактирование содержимого и визуализации информации. Под визуализацией информации базы понимается отбор отображаемых данных в соответствии с заданным критерием, их упорядочение, оформление и последующая выдача на устройства вывода или передачи по каналам связи.
В курсовой работе была использована база данных Access, так как в данном случае лучше всех подходит для решения таких задач, из-за гибкости редактирования таблиц и составления запросов.
Теоретическая часть
Некоторые понятия и определения БД
База данных — совокупность данных, хранимых в соответствии со схемой данных, манипулирование которыми выполняют в соответствии с правилами средств моделирования данных.
Система управления базами данных — совокупность программных и лингвистических средств общего или специального назначения, обеспечивающих управление созданием и использованием баз данных.
Программы, с помощью которых пользователи работают с базой данных, называются приложениями. В общем случае с одной базой данных могут работать множество различных приложений.
Например, если база данных моделирует некоторое предприятие, то для работы с ней может быть создано приложение, которое обслуживает подсистему учета кадров, другое приложение может быть посвящено работе подсистемы расчета заработной платы сотрудников, третье приложение работает как подсистема складского учета, четвертое приложение посвящено планированию производственного процесса и т. д.
При рассмотрении приложений, работающих с одной базой данных, предполагается, что они могут работать параллельно и независимо друг от друга, и именно СУБД призвана обеспечить работу множества приложений с единой базой данных таким образом, чтобы каждое из них выполнялось корректно, но учитывало все изменения в базе данных, вносимые другими приложениями.
Одним из основополагающих в концепции баз данных являются обобщенные категории данные и модель данных.
Понятие данные в концепции баз данных — это набор конкретных значений, параметров, характеризующих объект, условие, ситуацию или любые другие факторы. Примеры данных: Егоров Егор Егорович, 500 рублей и т. д. Данные не обладают определенной структурой, данные становятся информацией тогда, когда пользователь задает им определенную структуру, т. е. осознает их смысловое содержание. Например, если мы выпишем столбиком набор чисел: 534322, 523498, 453478, 796475 и т.д., то это данные, но не информация. Если теперь против каждого набора мы запишем название организации, эти данные превратятся в информацию, которую можно использовать. Таким образом, информация — это используемые данные.
Модели данных
Центральным понятием в области баз данных является понятие модели данных. Модель данных является ядром любой базы данных.
Модель данных — совокупность структур данных и операций их обработки.
Модель данных — это некоторая абстракция, которая, будучи приложима к конкретным данным, позволяет пользователям и разработчикам трактовать их уже как информацию, т.е. сведения, содержащие не только данные, но и взаимосвязь между ними.
В классической теории баз данных, модель данных есть формальная теория представления и обработки данных в системе управления базами данных (СУБД), которая включает, по меньшей мере, три аспекта:
1) аспект структуры: методы описания типов и логических структур данных в базе данных;
2) аспект манипуляции: методы манипулирования данными;
3) аспект целостности: методы описания и поддержки целостности базы данных.
Каждая БД и СУБД строится на основе некоторой явной или неявной модели данных. Все СУБД, построенные на одной и той же модели данных, относят к одному типу. Например, основой реляционных СУБД является реляционная модель данных, сетевых СУБД — сетевая модель данных, иерархических СУБД — иерархическая модель данных и т.д.
Иерархическая модель данных
Иерархическая модель данных— представление базы данных в виде древовидной (иерархической) структуры, состоящей из объектов (данных) различных уровней.
Появление иерархической моделисвязано с тем, что в реальном мире очень многие связи соответствуют иерархии, когда один объект выступает как родительский, а с ним может быть связано множество подчиненных объектов. Иерархия проста и естественна в отображении взаимосвязи между объектами.
Иерархическая структура представляет совокупность элементов, связанных между собой по определенным правилам.
К основным понятиям иерархической структуры относятся:
Узел — это совокупность атрибутов данных, описывающих некоторый объект. На схеме иерархического дерева узлы представляются вершинами графа.
Каждый узел на более низком уровне связан только с одним узлом, находящемся на более высоком уровне. Иерархическое дерево имеет только одну вершину, не подчиненную никакой другой вершине и находящуюся на самом верхнем (первом) уровне. Зависимые (подчиненные) узлы находятся на втором, третьем и т.д. уровнях.
К каждой записи БД существует только один (иерархический) путь от корневой записи. Например, как видно из рис.2.1. для записи Д5 путь проходит через записи А, В2 и С4.
Примерами иерархических моделей данных являются всевозможные классификаторы, функциональные структуры управления, различные организации, учебные заведения и т.д
Сетевая модель данных
Сетевая модель данных — логическая модель данных, являющаяся расширением иерархического подхода, строгая математическая теория, описывающая структурный аспект, аспект целостности и аспект обработки данных в сетевых базах данных.
В сетевой структуре при тех же основных понятиях (уровень, узел, связь) каждый элемент может быть связан с любым другим элементом.
В качестве примера сетевой модели можно привести структуру, содержащую сведения о студентах, участвующих в НИРС. Возможно участие одного студента в нескольких НИРС, а также участие нескольких студентов в разработке одной НИРС. Другой пример сетевой модели это ситуация, описывающая изучение студентами различных дисциплин, читаемых различными преподавателями.
Реляционная модель данных
Реляционная модель данных (РМД) — логическая модель данных, прикладная теория построения баз данных, которая является приложением к задачам обработки данных таких разделов математики как теории множеств и логика первого порядка.
Реляционные модели относятся к теоретико-множественным моделям. Появление теоретико-множественных моделей в системах баз данных было предопределено настоятельной потребностью пользователей в переходе от работы с элементами данных, как это делается в графовых моделях, к работе с некоторыми макрообъектами. Основной моделью в этом классе является реляционная модель данных. Простота и наглядность модели для пользователей-непрограммистов, с одной стороны, и серьезное теоретическое обоснование, с другой стороны, определили большую популярность этой модели. Кроме того, развитие формального аппарата представления и манипулирования данными в рамках реляционной модели сделали ее наиболее перспективной для использования в системах представления знаний, что обеспечивает качественно иной подход к обработке данных в больших информационных системах.
Основной структурой данных в модели является отношение, именно поэтому модель получила название реляционной(от английского relation — отношение).
Отношением R называют подмножество декартова произведения D1хD2х... xDn множеств d1,D2, ..., Dn (n ³ 1), необязательно различных. Исходные множества D1, D2, ..., Dn называют в модели доменами.
Объекты, атрибуты и ключи
Далее модель развивается путем определения атрибутов для каждого объекта. Атрибуты объекта - это элементы данных, относящиеся к определенному объекту, которые должны сохраняться. Анализируем составленный словарь данных, выделяем в нем объекты и их атрибуты, расширяем словарь при необходимости.
Следует обратить внимание, что несколько элементов отсутствуют. Опущена регистрационная информация, упомянутая в функциональной спецификации. Как ее учесть, вы подумаете самостоятельно и доработаете предложенный пример. Но более важно то, что пока отсутствуют атрибуты, необходимые для связи объектов друг с другом. Эти элементы данных в ER-модели не представляются, так как не являются, собственно, «натуральными» атрибутами объектов. Они обрабатываются по-другому и будут учтены в реляционной модели данных.
Реляционная модель характеризуется использованием ключей и отношений. Существует отличие в контексте реляционной базы данных терминов relation (отношение) и relationship (схема данных). Отношение рассматривается как неупорядоченная, двумерная таблица с несвязанными строками. Схема данных формируется между отношениями (таблицами) через общие атрибуты, которые являются ключами.
Существует несколько типов ключей, и они иногда отличаются только с точки зрения их взаимосвязи с другими атрибутами и отношениями. Первичный ключ уникально идентифицирует строку в отношении (таблице), и каждое отношение может иметь только один первичный ключ, даже если больше чем один атрибут является уникальным. В некоторых случаях требуется более одного атрибута для идентификации строк в отношении. Совокупность этих атрибутов называется составным ключом. В других случаях первичный ключ должен быть специально создан (сгенерирован). Например, в отношение «Туристы» имеет смысл добавить уникальный идентификатор туриста (код туриста) в виде первичного ключа этого отношения для организации связей с другими отношениями БД.
Другой тип ключа, называемый внешним ключом, существует только в терминах схемы данных между двумя отношениями. Внешний ключ в отношении - это атрибут, который является первичным ключом (или частью первичного ключа) в другом отношении. Это - распределенный атрибут, который формирует схему данных между двумя отношениями в БД.
Для проектируемой БД расширим атрибуты объектов кодовыми полями в качестве первичных ключей и используем эти коды в отношениях БД для ссылки на объекты БД следующим образом (табл. 3).
Построенную схему БД еще рано считать законченной, так как требуется ее нормализация. Процесс, известный как нормализация реляционной БД, используется для группировки атрибутов специальными способами, чтобы минимизировать избыточность и функциональную зависимость.
Нормализация
Функциональные зависимости проявляются, когда значение одного атрибута может быть определено из значения другого атрибута. Атрибут, который может быть определен, называется функционально зависимым от атрибута, который является детерминантом. Следовательно, по определению, все неключевые (без ключа) атрибуты будут функционально зависеть от первичного ключа в каждом отношении (так как первичный ключ уникально определяет каждую строку). Когда один атрибут отношения уникально не определяет другой атрибут, но ограничивает его набором предопределенных значений, это называется многозначной зависимостью. Частичная зависимость имеет место, когда атрибут отношения функционально зависит от одного атрибута составного ключа. Транзитивные зависимости наблюдаются, когда неключевой атрибут функционально зависит от одного или нескольких других неключевых атрибутов в отношении.
Процесс нормализации состоит в пошаговом построении БД в нормальной форме (НФ).
1. Первая нормальная форма (1НФ) очень проста. Все таблицы БД должны удовлетворять единственному требованию - каждая ячейка в таблицах должна содержать атомарное значение, другими словами, хранимое значение в рамках предметной области приложения БД не должно иметь внутренней структуры, элементы которой могут потребоваться приложению.
2. Вторая нормальная форма (2НФ) создается тогда, когда удалены все частичные зависимости из отношений БД. Если в отношениях не имеется никаких составных ключей, то этот уровень нормализации легко достигается.
3. Третья нормальная форма (3НФ) БД требует удаления всех транзитивных зависимостей.
4. Четвертая нормальная форма (4НФ) создается при удалении всех многозначных зависимостей.
Назначение и основные возможности Access
Access - это, прежде всего, система управления базами данных (СУБД). Как и другие продукты этой категории, она предназначена для хранения и поиска данных, представления информации в удобном виде и автоматизации часто повторяющихся операций (таких, как ведение счетов, учет, планирование и т.п.). С помощью Access можно разрабатывать простые и удобные формы ввода данных, а также осуществлять обработку данных и выдачу сложных отчетов.
База данных - это интегрированная совокупность взаимосвязанных данных. Обычно база данных создается для одной конкретной предметной области, организации или прикладной задачи. Для облегчения работы с базами данных используются системы управления базами данных (СУБД, англоязычная аббревиатура DBMS - Database Management System) - специальные пакеты программ обеспечивающие ввод, поиск, хранение, пополнение, корректировку данных, формирование отчетов и ответов на запросы пользователей баз данных. СУБД также обеспечивают сохранность и перемещение данных, а также возможность их использования другими программными средствами. В настоящее время большинство экономических и информационно-справочных программных комплексов реализовано на основе применения той или иной СУБД.
В Access в полной мере реализовано управление реляционными базами данных. Система поддерживает первичные и внешние ключи и обеспечивает целостность данных на уровне ядра (что предотвращает несовместимые операции обновления или удаления данных). Кроме того, таблицы в Access снабжены средствами проверки допустимости данных, предотвращающими некорректный ввод вне зависимости от того, как он осуществляется, а каждое поле таблицы имеет свой формат и стандартные описания, что существенно облегчает ввод данных. Access поддерживает все необходимые типы полей, в том числе текстовый, числовой, счетчик, денежный, дата/время, MEMO, логический, гиперссылка и поля объектов OLE. Если в процессе специальной обработки в полях не оказывается никаких значений, система обеспечивает полную поддержку пустых значений.
Реляционная обработка данных в Access за счет гибкой архитектуры системы способна удовлетворить любые потребности. При этом Access может использоваться как автономная СУБД в режиме файл-сервера или клиентского компонента таких продуктов, как SQL Server. Кроме того. Access поддерживает протокол ODBC (Open Database Connectivity), что позволяет подключаться к базам данных множества различных форматов, таких как SQL Server, Oracle, Sybase и даже DB/2 для больших ЭВМ фирмы IBM.
Система Access поддерживает обработку транзакций с гарантией их целостности. Кроме того, предусмотрена защита на уровне пользователя, что позволяет контролировать доступ к данным отдельных пользователей и целых групп.
MS Access - наиболее популярная на сегодняшний день СУБД для персональных компьютеров. Она представляет собой систему обслуживания реляционных баз данных с графической оболочкой. Данные в таких базах представляются в виде одной или нескольких таблиц, состоящих из однотипных записей. Система обслуживания включает в себя ввод данных в ЭВМ, отбор данных по каким-либо признакам (критериям или параметрам), преобразование структуры данных, вывод данных, являющихся результатом решения задач в табличном или каком-либо ином удобном для пользователя виде.
Таблица – это объект, соответствующий понятию «таблица» в теории реляционных баз данных. Для каждой таблицы в Access можно определить первичный ключ и один или несколько индексов с целью увеличения скорости доступа к данным.
Access позволяет создавать структуру таблицы в трех режимах – в режиме конструктора, с помощью мастера и путем ввода данных. Разница предполагает использование этих средств пользователями с разным уровнем подготовки, разными целями и перспективами использования данных. Так же имеется возможность просматривать, редактировать, удалять и добавлять записи, осуществлять поиск, замену, сортировку данных, изменять вид таблицы. Связи между таблицами определяются специальным средством, которое называется «Схема данных».
Запрос – объект, содержащий текст SQL запроса, имеющий уникальное имя в определенной базе данных. Создать запрос можно с помощью мастера и в режиме конструктора. В первом случае пользователю в интерактивном режиме предлагается выбрать имя таблицы и поля для выборки. Во втором случае можно выбрать несколько таблиц или запросов, связать их графическим способом и определить поля выборки. Также можно задать дополнительные условия для каждого поля и параметры сортировки.
Форма – это специальный объект-контейнер для других интерфейсных компонентов, таких как поля ввода и отображения данных, кнопки и др. На форме разработчик располагает компоненты для ввода, корректировки, просмотра и группировки данных, в зависимости от специфики приложения. Форму также можно создать двумя способами – в режиме конструктора и с помощью мастера. В первом случае разработчик располагает набором компонентов (при необходимости можно зарегистрировать свои ActiveX), которые свободно размещает на форме и задает их параметры. В режиме мастера пользователь просто выбирает таблицу, поля и стиль оформления, а форма генерируется автоматически.
Таблицы и поля (объекты DataTable и DataColumn)
Объекты DataTable используются для представления одной из таблиц базы данных в DataSet. В свою очередь, DataTable составляется из объектов DataColumn.
DataColumn - это блок для создания схемы DataTable. Каждый объект DataColumn имеет свойство DataType, которое определяет тип данных, содержащихся в каждом объекте DataColumn. Например, можно ограничить тип данных до целых, строковых и десятичных чисел. Поскольку данные, содержащиеся в DataTable, обычно переносятся обратно в исходный источник данных, необходимо согласовывать тип данных с источником.
Объекты DataRelation
Объект DataSet имеет также свойство Relations, возвращающее коллекцию DataRelationCollection, которая в свою очередь состоит из объектов DataRelation. Каждый объект DataRelation выражает отношение между двумя таблицами (сами таблицы связаны по какому-либо полю (столбцу)). Следовательно, эта связь осуществляется через объект DataColumn.
Строки (объект DataRow)
Коллекция Rows объекта DataTable возвращает набор строк (записей) заданной таблицы. Эта коллекция используется для изучения результатов запроса к базе данных. Мы можем обращаться к записям таблицы как к элементам простого массива.
DataAdapter
DataSet - это специализированный объект, содержащий образ базы данных. Для осуществления взаимодействия между DataSet и собственно источником данных используется объект типа DataAdapter. Само название этого объекта - адаптер, преобразователь, - указывает на его природу. DataAdapter содержит метод Fill() для обновления данных из базы и заполнения DataSet.