русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

СУБД ACCESS. ЗАПРОСЫ К БАЗЕ ДАННЫХ И ИХ ИСПОЛЬЗОВАНИЕ. ВИДЫ ЗАПРОСОВ. ТЕХНОЛОГИЯ СОЗДАНИЯ


Дата добавления: 2013-12-23; просмотров: 7978; Нарушение авторских прав


СУБД ACCESS. ОПЕРАЦИИ НАД ТАБЛИЦАМИ. ФИЛЬТРАЦИЯ ДАННЫХ. УСТАНОВЛЕНИЕ СВЯЗЕЙ МЕЖДУ ТАБЛИЦАМИ. ОБЕСПЕЧЕНИЕ ЦЕЛОСТНОСТИ ДАННЫХ

СУБД ACCESS 2000. ТАБЛИЦЫ И ИХ СТРУКТУРА. ТИПЫ ПОЛЕЙ И ИХ СВОЙСТВА. КОНТРОЛЬ ЗА ВВОДИМЫМИ ДАННЫМИ

РЕЛЯЦИОННАЯ БАЗА ДАННЫХ И ЕЕ ОСОБЕННОСТИ. ВИДЫ СВЯЗЕЙ МЕЖДУ РЕЛЯЦИОННЫМИ ТАБЛИЦАМИ

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

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

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



Пусть создана таблица Студент, содержащая следу-рэщие поля: № группы, ФИО, № зачетки, дата рождения, шазвание специальности, название факультета. Такая организация хранения информации будет иметь ряд недостатков:

· дублирование информации (наименование специальности и факультета повторяются для каждого студента), следовательно, увеличится объем БД;

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

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

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

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

Третья нормальная форма. Таблица находится в третьей нормальной форме, если она удовлетворяет требованиям второй нормальной формы, ни одно из ее неключевых полей не зависит функционально от любого другого неключевого поля. Например, в таблице Студент (№ группы, ФИО, № зачетной книжки, Дата рождения, Староста) три поля — № зачетной книжки, № группы, Староста находятся в транзитивной зависимости. № группы зависит от № зачетной книжки, а Староста зависит от № группы. Для устранения транзитивной зависимости необходимо часть полей таблицы Студент перенести в другую таблицу Группа. Таблицы примут следующий вид: Студент (№ группы, ФИО, № зачетной книжки, Дата рождения), Группа (№ группы, Староста).

Над реляционными таблицами возможны следующие операции:

· Объединение таблиц с одинаковой структурой. Результат— общая таблица: сначала первая, затем вторая (конкатенация).

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

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

· Выборка (горизонтальное подмножество). Результат — выбираются записи, отвечающие определенным условиям.

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

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

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

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

· один-к-одному;

· один-ко-многим;

· многие-ко-многим.

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

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

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

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

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

Имя поля должно быть уникальным, содержать не более 64 символов, включая пробелы, причем имя поля не должно начинаться с пробела. Имена полей могут содержать любые символы, за исключением (.); (!); ('); ([); (]).

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

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

· Числовой — тип данных для хранения числовых значений, используемых в математических расчетах. Данные этого типа могут содержаться в 1, 2, 4, 8 байтах в зависимости от значения поля Размер поля.

· Поле Memo — специальный тип данных для хранения больших объемов информации, по объему превышающей 255 символов. Это поле может содержать до 65535 символов.

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

· Денежный тип — тип данных для хранения денежных значений, точность представления которых колеблется от 1 до 4 знаков после запятой. Целая часть может содержать до 15 десятичных знаков. Длина поля 8 байт.

· Счетчик — специальный тип данных для уникальных натуральных чисел, обладающий свойством автоматического наращивания при каждой новой записи. Длина поля 4 байта.

· Логический тип — специальный тип данных, имеющий только два значения, интерпретируемых как Да/Нет, Истина/Ложь, Вкл/Выкл. Длина поля 1 байт.

· Поле объекта OLE — содержит ссылку на OLE-объект, например документы Microcoft Word, Microcoft Excel, звук, изображение и другие виды объектов. Ограничено дисковым пространством.

· Гиперссылка — специальное поле, предназначенное для хранения гипёрссылки, с помощью которой можно ссылаться на произвольный фрагмент данных внутри файла или страницы на том же компьютере, в локальной сети или Интернете. Длина до 2048 символов.

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

Наиболее важными являются следующие свойства.

· Размер поля — определяет максимальную длину данных, которые могут содержаться в данном поле.

· Формат поля — определяет способ формирования данных в данном поле таблицы.

· Число десятичных знаков — определяет количество знаков после запятой для полей числового и денежного типа.

· Маска ввода — определяет форму ввода данных в поле и облегчает контроль за вводимыми символами.

· Подпись — задает названия полей таблицы, которые выводятся в различных режимах.

· Значение по умолчанию — указывает значение, автоматически вводимое и поле при создании новой записи.

· Условие назначения — ограничение, накладываемое на вводимые в данное поле данные.

· Сообщение об ошибке — это текст сообщения, которое будет выводиться в случае нарушения условия назначения.

· Обязательное поле — определяет, является ли ввод данных в это поле обязательным.

· Индексированное поле — определяет, является ли данное поле индексированным. Индекс ускоряет все операции, связанные с сортировкой, группировкой или поиском записей по значению.

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

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

Ключевые поля таблицы индексируются автоматически.

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

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

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

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

Для того чтобы вернуться к первоначальному порядку сортировки, нужно выполнить команду Удалить фильтр меню Записи.

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

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

· Фильтр по выделенному,

· Обычный фильтр;

· поле Фильтр для;

· Расширенный фильтр.

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

Обычный фильтр используется для отбора записей по значениям нескольких полей. Для выполнения данного фильтра используется команда Фильтр — Изменить фильтр меню Записи.

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

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

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

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

· типы данных, длины полей, а главное — значения обязательно должны совпадать.

Связи между таблицами устанавливаются на Схеме данных.

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

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

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

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

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

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

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

· обеспечение целостности связи;

· каскадное обновление полей;

· каскадное удаление связанных полей.

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

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

Access позволяет создавать запросы двух типов: QBE-запросы, SQL-запросы.

QBE-запросы (Query By Example) — запросы, строящиеся с помощью конструктора запросов, представляющего собой графический инструмент для создания запросов по образцу.

SQL-запросы — запросы, строящиеся при помощи унифицированного набора инструкций SQL (Structured Query Language — структурированный язык запросов).

Все запросы делятся на две группы: запросы-выборки, запросы-действия.

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

· Запрос к связанным таблицам — позволяет производить выборку данных из связанных таблиц.

· Перекрестный запрос — отображает итоговые данные с группировкой их по горизонтали и вертикали, выводя результаты их обработки в виде таблиц.

· Запрос с параметром — позволяет пользователю задать критерий отбора, введя нужный параметр при вызове запроса.

· Запрос с вычисляемым полем — позволяет рассчитать данные на основе других полей из той же строки запроса.

· Запрос с критерием поиска — позволяет производить отбор записей в соответствии с заданным критерием поиска.

· Запрос с итогами — производит математические вычисления и выдает результат.

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

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

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

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

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

В Access можно создавать запросы при помощи Мастера запросов и с помощью Конструктора.

Для создания запросов при помощи Мастера имеются следующие мастера:

· Мастер создания простого запроса;

· Мастер создания перекрестного запроса;

· Мастер создания запросов на поиск повторяющихся записей;

· Мастер создания запросов на поиск записей без подчиненных записей.

При создании запроса с помощью Мастера производится пошаговое выполнение действий в диалоговом окне Мастера запросов.

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

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

Назначение строк в бланке Конструктора запросов:

· 1-я строка Поле предназначена для ввода имени поля запроса и обозначения поля — источника данных или вычисляемого выражения;

· 2-я строка Имя таблицы предназначена для задания имени таблицы — источника данных;

· 3-я строка Сортировка предназначена для указания порядка сортировки в данном поле. Может принимать следующие значения: по возрастанию, по убыванию, отсутствует;

· 4-я строка Вывод на экран содержит флажок, указывающий на то, будет ли выводиться соответствующее значение поля;

· 5-я строка Условие отбора содержит критерий, по которому будет происходить отбор записей в результирующую таблицу.

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



<== предыдущая лекция | следующая лекция ==>
БАЗА ДАННЫХ. ИНФОЛОГИЧЕСКАЯ МОДЕЛЬ БАЗЫ ДАННЫХ. ОСНОВНЫЕ ВИДЫ МОДЕЛЕЙ. ПРОЕКТИРОВАНИЕ БАЗ ДАННЫХ | СУБД ACCESS 2000. ФОРМЫ, ИХ ВИДЫ. СТРУКТУРА ФОРМЫ. СВОЙСТВА ФОРМЫ. ТЕХНОЛОГИЯ СОЗДАНИЯ ФОРМ. ЭЛЕМЕНТЫ УПРАВЛЕНИЯ И ИХ ИСПОЛЬЗОВАНИЕ В ФОРМАХ


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.007 сек.