Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
EGorov.docx
Скачиваний:
2
Добавлен:
01.07.2025
Размер:
1 Мб
Скачать
☆

Нормализация

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

Процесс нормализации состоит в пошаговом построении БД в нормальной форме (НФ).

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.

Объекты DBConnection и DBCommand

Объект DBConnection осуществляет связь с источником данных. Эта связь может быть одновременно использована несколькими командными объектами. Объект DBCommand позволяет послать базе данных команду (как правило, команду SQL или хранимую процедуру). Объекты DBConnection и DBCommand иногда создаются неявно в момент создания объекта DataSet, но их также можно создавать явным образом.

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

DataGridView

Элемент управление DataGridView представляет собой настраиваемую таблицу для отображения данных. Класс DataGridView поддерживает настройку ячеек, строк, столбцов и платформы с помощью свойства DefaultCellStyle,как ColumnHeadersDefaultCellStyle, CellBorderStyle и GridColor.  Элемент управления DataGridView можно использовать для отображения данных как с базовым источником данных, так и без. Без определения источника данных можно создать столбцы и строки, которые содержат данные и добавьте их непосредственно в DataGridView с помощью свойства Rows и Columns. Можно также использовать коллекцию Rows для доступа к объектам DataGridViewRow, а свойство DataGridViewRow.Cells для чтения или записи значения ячеек напрямую.Индексатор Item также предоставляет прямой доступ к ячейкам.В качестве альтернативы заполнения элемента управления вручную можно задать свойства DataSource и DataMember для привязки DataGridView к источнику данных и автоматически заполнить ее данными. 

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

OleDbCommandBuilder

Автоматически генерирует однотабличные команды, которые позволяют согласовать изменения, вносимые в объект DataSet,

со связанной базой данных. Этот класс не наследуется.

OleDbConnection

Представляет открытое подключение к источнику данных.

OleDbConnectionStringBuilder

Обеспечивает удобный способ создания и

управления содержимым строк подключения с помощью

классаOleDbConnection.

OleDbDataAdapter

Представляет набор команд данных и подключение

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

DataSet и обновления источника данных.

OleDbDataReader

Предоставляет способ чтения потока

строк данных из источника только в прямом порядке. 

Этот класс не наследуется.

OleDbEnumerator

Предоставляет механизм для перечисления всех

доступных поставщиков OLE DB в локальной сети.

OleDbError

Собирает сведения, имеющие отношение

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

OleDbErrorCollection

Собирает все ошибки, сгенерированные

поставщиком данных .NET Framework для OLE DB. 

Этот класс не наследуется.

OleDbException

Исключение, которое генерируется,

когда соответствующий поставщик возвращает

предупреждение или ошибку для источника данных OLE DB. 

Этот класс не наследуется.

OleDbFactory

Представляет набор методов для создания

экземпляров классов поставщиков OLEDB,

реализующих источник данных.

OleDbInfoMessageEventArgs

Предоставляет данные для события InfoMessage. 

Этот класс не наследуется.

OleDbMetaDataCollectionNames

Предоставляет список констант

для использования с методом GetSchema в целях

извлечения коллекций метаданных.

OleDbMetaDataColumnNames

Предоставляет статические значения, которые

используются для имен столбцов в объектах

OleDbMetaDataCollectionNames, содержащихся в таблице 

DataTable. Объект DataTable создан с помощью метода GetSchema.

OleDbParameter

Представляет параметр для OleDbCommand и

дополнительно его отображение для столбца DataSet. 

Этот класс не наследуется.

OleDbParameterCollection

Представляет коллекцию параметров,

которые важны для OleDbCommand,

а также их сопоставления со столбцами в DataSet.

OleDbPermission

Позволяет поставщику данных .NET Framework для

OLE DB обеспечить пользователю уровень безопасности,

достаточный для доступа к источнику данных OLE DB.

OleDbPermissionAttribute

Связывает операцию безопасности с пользовательским

атрибутом безопасности.

OleDbRowUpdatedEventArgs

Предоставляет данные для события RowUpdated.

OleDbRowUpdatingEventArgs

Предоставляет данные для события RowUpdating.

OleDbSchemaGuid

Возвращает тип таблицы схемы, указываемой методом

 GetOleDbSchemaTable.

OleDbTransaction

Представляет создаваемую в источнике

данных SQL-транзакцию. Этот класс не наследуется.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]