Редактирование структуры таблицы
Для редактирования структуры таблицы, т. е. добавление новых полей или удаление некоторых полей из таблиц необходимо из режима таблицы перейти в режим конструирования таблицы для этого необходимо выделить пиктограмму (значок) нужной таблицы и воспользоваться кнопкой «Конструктор» в окне объектов БД. Затем можно добавить новое поле в таблицу, если выполнить щелчок правой кнопкой «мыши» по полю перед которым необходимо вставить новое поле и в контекстном меню выбрать пункт «Добавить строки». Для удаления поля необходимо выполнить по нему щелчок правой кнопкой «мыши» и в контекстном меню выбрать пункт «Удалить строки». Также для добавления (удаления) полей можно пользоваться пунктами меню «Вставка» - «Строки» («Правка» – «Удалить строку») или кнопками «Добавить строки» («Удалить строки») .
Связи между таблицами Структура БД в СУБД Access всегда разрабатывается таким образом, чтобы каждая таблица, которая в ней находится, не содержала избыточной информации. Например, в БД Образование необходимо хранить данные об оценках, которые получил каждый студент по тому или иному предмету. Как следствие, нужно также каким-то образом хранить и названия предметов, по которым эти оценки ставятся. Кроме этого, необходимо хранить фамилию, имя и отчество преподавателей с указанием предмета, который ведет каждый из них. Если для этих целей будет использоваться одна таблица, то станет очевидным нерациональное использование памяти компьютера, так как для каждого студента придется хранить в соответствующей записи названия предметов и фамилии преподавателей, которые будут повторяться много раз. Поэтому указанную информацию необходимо разбить на несколько таблиц, которые будут между собой взаимосвязаны, а именно: Студенты – информация о студенте, в частности уникальный код, который будет использоваться при хранении оценок: Преподаватели – информация о преподавателе, в частности уникальный код, используемый при хранении предметов; Предметы – информация о предмете, в частности уникальный код преподавателя, который ведет этот предмет, а также уникальный код предмета, используемый при хранении оценок; Успеваемость – информация об оценках студентов, в частности уникальный код для каждой записи с оценкой, код студента, код предмета и оценка, которая получена данным студентом по этому предмету. При этом для созданных таблиц необходимо установить связи, чтобы, например, по фамилии студента в таблице Студенты определить все записи с его оценками из таблицы Успеваемость. Для установки связей необходимо воспользоваться режимом Схема данных, который устанавливается командой Сервис – Схема данных или кнопкой Схема данных на панели инструментов. При выполнении данной команды на экране появится диалоговое окно Добавление таблицы в котором на вкладке Таблицы нужно добавить поочередно все таблицы между которыми необходимо установить связь в схему данных с помощью кнопки Добавить. Затем следует закрыть окно Добавление таблицы. Чтобы установить связь между таблицами необходимо выделить в окне Схема данных поле в одной из таблиц БД и с помощью мыши «перетащить» его изображение на поле в другой таблице БД и затем отпустить кнопку мыши. При этом появится диалоговое окно Изменение связей, в котором для обеих таблиц должно быть указано поле, по которому устанавливается связь. Причем при установлении связи между двумя таблицами одна из таблиц всегда является «главной», а другая «подчиненной». «Главной» становится та таблица, из которой вы перетаскивали поле, «подчиненной» — та таблица, куда вы его перетаскивали. Одна и та же таблица может выступать в одной связи как главная, а в другой – как подчиненная. Может быть, как несколько подчиненных таблиц у одной таблицы, так и несколько главных таблиц для одной подчиненной. Стоит подчеркнуть, что связь между таблицами может быть установлена для полей имеющих одинаковые записи, типы данных, длины полей и значения. При этом очень важно правильно понимать, в чем заключается разница между «главной» и «подчиненной» таблицами. С точки, зрения сопоставления и поиска данных из двух таблиц никакой разницы нет – вы можете отыскивать как информацию из главной таблицы, опираясь на данные подчиненной таблицы, так и наоборот, отыскивать информацию в подчиненной, опираясь на информацию из главной. Различие состоит только в том, как система управления данными будет обеспечивать целостность данных при изменении значений в связующих полях или при удалении записей из связанных таблиц. Как правило, хотя бы в одной таблице связующее поле является первичным ключом и однозначно определяет запись в этой таблице. Такая таблица и является кандидатом в «главные». Если во второй таблице связующее поле не является однозначно характеризующим запись полем, то эта таблица не может быть главной, а может выступать только в качестве подчиненной. Рассмотрим пример базы данных «Клиенты и заказы». В этом примере таблица заказов не может быть главной, поскольку поле связи «Код заказчика» может содержать повторяющуюся информацию – ведь клиент может сделать несколько заказов. Главной должна быть таблица клиентов. Если в этой базе есть еще, например, и таблица товаров, при этом таблицы товаров и заказов будут связаны, скажем, полем «Код товара», то для этой связи главной таблицей станет таблица товаров. В такой базе данных из трех таблиц с двумя связями будут два «начальника» над одним «подчиненным». Если вы хотите, чтобы Access поддерживал целостность связей между двумя таблицами (связь между таблицами будет сохранена и после закрытия СУБД Access), установите флажок «Обеспечение целостности данных». Если установлен флажок Обеспечение целостности данных, то в окне Изменение связей автоматически становятся доступны еще два флажка, связанных с обеспечением целостности данных: «каскадное обновление связанных полей» и «каскадное удаление связанных записей». Установите оба этих флажка. В этом случае Access позволит производить изменения и удаление записей данных главной таблицы. Одновременно будут изменены (или удалены) связанные с ними записи подчиненной рабочей таблицы. Это означает, что правила целостности, будут сохранены даже при изменении значений в связующих полях. Так, например, если рассмотреть пример с БД «Студенты» то установление флажка «Обеспечение целостности данных» приведет к тому, что после этого в таблицу Успеваемость невозможно будет ввести запись с таким значением поля КодСтудента, для которого нельзя будет найти соответствующую запись в таблице Студенты. Флажок «каскадное обновление связанных полей». При изменении значения ключевого поля в "главной" таблице (Студенты) автоматически изменяются значения связанного поля для соответствующих, записей в «подчиненной» таблице (Успеваемость). В рассматриваемом случае ключевое поле КодСтудента является счетчиком, следовательно, значения этого поля не могут быть изменены пользователем. Поэтому нет необходимости устанавливать данный флажок. Флажок «каскадное удаление связанных записей». При удалении записи из «главной» таблицы (Студенты) автоматически удаляются те записи из «подчиненной» таблицы (Успеваемость), для которых значение поля КодСтудента совпадает со значением в удаленной записи из таблицы Студенты. Так как в таблице Успеваемость не нужно хранить оценки несуществующих студентов, то флажок «каскадное удаление связанных записей» следует установить. После того как выбраны поля для установления связи между таблицами, в окне Изменение связей необходимо нажать кнопку «Создать», после чего на схеме данных в виде линии будет отображена созданная связь. Чтобы изменить установленную связь, необходимо выделить соответствующую линию, щелкнув по ней мышью. После этого связь можно удалить командой «Правка» – «Удалить» или с помощью клавиши Delete,а также изменить, вызвав окно «Изменение связи» командой «Связи» – «Изменить связь» или двойным щелчком на линии связи. Полученную схему данных следует сохранить. Для этого нужно закрыть окно «Схемаданных» и ответить утвердительно на вопрос о сохранении схемы данных в системном сообщении об изменении макета. Подтаблицы БД В Access имеется возможность отображения в одной таблице данных из другой таблицы, если между этими таблицами есть связь. Получаемая таким образом структура «таблица в таблице» носит название подтаблицы. Вообще говоря, подтаблицы автоматически создаются сразу после определения связей между таблицами. При этом рядом с каждой записью в таблице появляется изображение крестика, при нажатии на который будет развернута структура подтаблицы. Однако далеко не во всех случаяхавтоматически создаваемые подтаблицы будут отвечать требованиям пользователя. Чтобы удалить имеющуюся подтаблицу: следует воспользоваться командой «Формат» – « Подтаблица» – «Удалить». В этом случае подтаблица будет удалена и пользователь для данной таблицы может создавать подтаблицу по своему усмотрению. Чтобы создать новую подтаблтщу, необходимо в открытой таблице выполнить команду «Вставка» – «Подтаблща». Затем в диалоговом окне «Вставка подтаблицы» можно выбрать таблицу (или запрос), данные из которой будут отображаться в подтаблице. Затем нужно в качестве параметров «Подчиненные поля» и «Основные поля» указать поля, по которым выполняется связь и нажать кнопку «ОК». Запросы Как правило, нет необходимости в отображении всей информации, которая хранится в той или иной таблице БД. Для этого в Access используются запросы. Этиобъекты БД служат для извлечения данных из таблиц и предоставления их пользователю в удобном виде. Особенность запросов состоит в том, что они черпают данные из базовых таблиц и создают на их основе временную таблицу. С помощью запросов выполняют такие операции как отбор данных, их сортировку и фильтрацию. С помощью запросов можно выполнять преобразование данных по заданному алгоритму, создавать новые таблицы, выполнять автоматическое наполнение таблиц данными, импортированными из других источников, выполнять простейшие вычисления в таблицах и многое другое. Access позволяет создавать запросы двух типов: QBE-запросы, SQL-запросы. QBE-запросы(Query By Example) – запросы, строящиеся с помощью конструктора запросов, представляющего собой графический инструмент для создания запросов по образцу. SQL-запросы– запросы, строящиеся при помощи унифицированного набора инструкций SQL (Structured Query Language – структурированный язык запросов). С другой стороны все запросы делятся на две группы: запросы-выборки и запросы-действия. Запросы-выборки осуществляют выборку данных из таблиц в соответствии с заданными условиями. К этой группе запросов относятся: · Запрос на выборку позволяет производить выборку данных из связанных таблиц. · Перекрестный запрос отображает итоговые данные с группировкой их по горизонтали и вертикали, выводя результаты их обработки в виде таблиц. · Запрос с параметром позволяет пользователю задать критерий отбора, введя нужный параметр при вызове запроса. · Запрос с вычисляемым полем позволяет рассчитать данные на основе других полей из того же запроса. · Запрос с условием позволяет производить отбор записей в соответствия с заданным критерием отбора. · Итоговый Запрос позволяет произвести группировку записей с одинаковыми значениями заданных полей и провести математические вычисления по сгруппированным данным. Запросы-действия позволяют модифицировать данные в таблицах: удалять, обновлять, добавлять записи. К этой группе запросов относятся: · Запросы на создание таблицы создают таблицы на основании данных, содержащихся в результирующем множестве запроса. · Запросы на добавление записей позволяют добавлять втаблицу записи, создаваемые запросом. · Запросы на обновление изменяют значения существующих полей в соответствии с заданным критерием. · Запросы на удаление удаляют записи из одной или нескольких таблиц одновременно. Чтобы создать новый запрос, необходимо нажать кнопку «Запросы» в окне объектов БД и после этого выбрать режим создания запроса: с использованием конструктора или мастера, т.е. выполнить двойной щелчок по пункту «Создание запроса в режиме конструктора» или соответственно «Создание запроса с помощью мастера». Также для создания запроса можно воспользоваться кнопкой «Создать», после чего выбрать режим создания нового запроса. В этом случае будет предложено: · конструктор (создание запроса с помощью конструктора запросов) · простой запрос (создание запроса с помощью мастер создания простого запроса) · перекрестный запрос (создание запроса с помощью мастера создания перекрестного запроса) · повторяющиеся записи (создание запроса с помощью мастера создания запросов на поиск повторяющихся записей) · записи без подчиненных (создание запроса с помощью мастера создания запросов на поиск записей без подчиненных записей). Создание запроса в режиме конструктора. После двойного щечка по пункту «Создание запроса в режиме конструктора» будет отображено диалоговое окно Добавление таблицы для выбора таблицы (иди таблиц), которая будет служить источником данных при выполнении этого запроса. Необходимо добавить все таблицы, которые будут служить источником данных. Для этого необходимо выделять название нужной таблицы и нажимать на кнопку «Добавить». Затем необходимо закрыть окно добавления таблицы (кнопка «Закрыть»). После этого на экране будет отображено окно конструктора нового запроса, в котором в верхней части окна конструктора располагаются макет(ы) таблицы (или таблиц). В нижней части окна содержится бланк запроса. Первой строкой бланка является строка поле в ней указывается название полей, содержимое которых должно отражаться в результаты запроса. Чтобы добавить нужное поле в бланк запроса, необходимо перетащить его из макета таблицы в строку поле бланказапроса или выполнить по нему двойной щелчок левой кнопкой мыши. Таким образом последовательно в столбцы бланка запроса необходимо добавить все нужные поля. Чтобы добавить в запрос все ноля из таблицы, следует дважды щелкнуть в макете таблицы на строке с символом «*». Рассмотрим остальные строки бланка запроса: Имя таблицы – в этой строке содержится название таблицы, в которой находится поле. Это значение устанавливается автоматически при занесении поля в бланк запроса. Сортировка - указывается направление сортировки данных в данном поле. При щелчке на этой строке открывается кнопка раскрывающегося списка, в котором можно выбрать метод сортировки: по возрастанию или по убыванию. В результирующей таблице данные будут отсортированы по тому полю, для которого задан порядок сортировки. Возможна многоуровневая сортировка – сразу по нескольким полям. В этом случае данные сначала сортируются по тому полю, которое в бланке запроса по образцу находится левее, затем по следующему полю, для которого включена сортировка, и так далее слева направо. Соответственно, при формировании запроса надо располагать поля результирующей таблицы не как попало, а с учетом будущей сортировки. В крайнем случае, если запрос уже сформирован и надо изменить порядок следования столбцов, пользуются следующим приемом:
• выделяют столбец щелчком на его заголовке (кнопку мыши отпускают); • еще раз щелкают на заголовке уже выделенного столбца (но кнопку не отпускают); • перетаскивают столбец в другое место. Примечание:Для удаления столбца (поля) в бланке запроса его также выделяют и нажимают на клавишу Deleteна клавиатуре. Вывод на экран - задается режим, при котором на экране будет отображаться содержимое выбранного поля. По умолчанию предполагается, что все поля, включенные в запрос, должны выводиться на экран, но это не всегда целесообразно. Например, бывают случаи, когда некое поле необходимо включить в запрос, например, потому, что оно является полем сортировки, но, в то же время, нежелательно, чтобы пользователь базы видел его содержание. В таких случаях отображение содержимого на экране подавляют сбросом флажка «Вывод на экран». Примером может быть запрос на вывод списка сотрудников предприятия, отсортированный по количеству дней, пропущенных по болезни. Он позволит каждому оценить свое положение в этом списке, но не позволит точно узнать, кто и сколько дней болел. Условие отбора, или –указываются одно или несколько условий, в соответствии с которыми записи будут добавляться в выборку запроса. Данная строка бланка запроса позволяет сформировать два типа запросов Запрос с условием и Запрос с параметром. Запрос с условием. Для формирования запроса с условием для необходимых полей в бланке запроса в строке «Условие отбора» задать индивидуальное условие. Для задания условий могут использоваться логические операторы (=, <, <=, >, =>, <>), операторы связи (AND(И), OR(ИЛИ)), операторы сравнения (NOT(НЕ), LIKE(КАК)). Например, необходимо отобразить заказы на сумму более 100000 рублей, осуществленные ранее 12.03.05. Примеры задания других условий отбора данных из полей с использованием логических операторов, операторов связи и операторов сравнения.
Запрос с параметром. Это такой запрос в котором критерий отбора данных задает сам пользователь, вводя нужный параметр при обращении к запросу. Для создания запроса с параметром необходимо длянужных полей в бланке запроса в строке «Условие отбора» задать в квадратных скобках вопрос ответ, на который будет определять параметр отбора данных из этого поля. Например, необходимо отобразить заказы на сумму задаваемую пользователем. Также возможно создание комбинированных запросов состоящих из условия и параметра. Например, необходимо отобразить заказы на сумму более той, которую указывает пользователь, и осуществленные ранее указанной даты. Примечание: Для создания простого запроса на выборку, которыйпозволяет производить выборку данных из определенных полей связанных таблиц, строка «Условие отбора» бланка запроса не используется. После заполнения бланка запроса запрос следует сохранить для этого необходимо закрыть окно конструирования запроса. На вопрос о «Сохранить изменение макета или структуры объекта «….»?» ответить «Да», в следующем окне указать названия запроса, нажать «Ок». В результате в окне объектов БД появится значок только что созданного запроса который можно открыть, выполнив по нему двойной щелчок или изменить с помощью кнопки Конструктор окна БД. Запрос с вычисляемым полем. При создании запросов часто возникает необходимость не только использовать имеющиеся поля таблиц, но и создавать на их основе другие поля, которые называются вычисляемыми. Например, если в таблице какого-либо магазина имеется поле цена на товар и поле количество этого товара, то, исходя из этого можно создать вычисляемое поле, в котором будет подсчитываться общая стоимость для каждого товара путем перемножения значении цена и КОЛИЧЕСТВО. Для этого в первом пустом столбце бланка запроса в начале вводиться название нового поля после которого ставится двоеточие и пробел «Общая стоимость:». Затем вводиться расчетная формула, в нашем случае это [ЦЕНА] * [КОЛИЧЕСТВО] (имена полей заключаются в квадратные скобки в формуле). В результате выполнения запроса, отображаемого в режиме таблицы, присутствует новое поле, в котором отображается «Общая стоимость». В вычисляемом поле могут использоваться любые арифметические операторы (+,-,*,/) между полями, записанными в формуле, а также следующие операторы: \ - Деление первого числа на второе с округлением результата; ^ - Возведение в степень; MOD - Вычисление остатка от деления нацело; & - Конкатенация строк (операция объединения текстовых значений). Используется при создании вычисляемого поля на основе содержимого текстовых полей. Также в формуле могут использоваться числа или текстовые символы. Например, для расчета «Цена товара в рублях» при известной «Цена товара в долларах» необходимо записать формулу [Цена товара в долларах]*28,7 Итоговый запрос. При обработке данных в таблицах зачастую бывает необходимо учитывать в запросах не отдельные записи, а итоги, которые вычисляются или формируются определенным образом для различных групп записей в таблице. Итоговые запросы значительно отличаются oт обычных, В них можно использовать два типа полей. Существуют поля, по которым осуществляется группировка данных, и поля, для которых проводятся вычисления. Дополнительно можно включить еще поля для определения условий запроса. Чтобы выполнить подобные вычисления, необходимо создать новый запрос в режиме конструктора, и затем воспользоваться кнопкой Групповые операции на панели инструментов. После этого среди строк бланка запроса появится строка Групповые операции. Затем для поля, по которому должна осуществляться группировка записей необходимо выбрать функцию «Группировка». Например, если требуется узнать количество товаров на складе имеющих одинаковую цену за единицу, то в первый столбец бланка запроса следует поместить поле «Цена». Для этого столбца нужно задать функцию «Группировка», в результате чего все записи будут сгруппированы по ценам за единицу товара. Затем необходимо отбуксировать поле «На складе» во второй столбец бланка запроса. Для этого столбца следует установить фунцию "Sum" (Сумма) из списка "Групповая операция". Результатом запроса будет таблица, содержащая информацию о количестве товаров на складе, имеющих одинаковую цену. Кроме функций «Группировка» и «Sum» в строке «Групповая операция» могут использоваться следующие функции: Avg – нахождение среднее значение для группы записей; Min – нахождение минимальное значение для группы записей; Мах – нахождение максимальное значение для группы записей; Count – подсчет числа значений в группе записей; First – значение поля в первой записи группы записей; Last – значение поля в последней записи группы записей. Создание запроса с помощью мастера. Чтобы создать запрос с помощью мастера, необходимо нажать кнопку «Запросы» в окне объектов БД и после этого выполнить двойной щелчок по пункту «Создание запроса с помощью мастера». Далее необходимо выбрать в списке «Таблицы и запросы» таблицы или запросы поля, из которых должны отображаться в формируемом запросе, затем из списка «Доступные поля» необходимо нужные поля перенести в список «Выбранные поля» для этого нужно пользоваться кнопками Перенести выбранное поле в список «Выбранные поля» Перенести все поля таблицы или запроса в список «Выбранные поля» Также если вдруг поле нужно удалить из списка «Выбранные поля» можно воспользоваться кнопками Удалить выбранное поле из списка «Выбранные поля» Удалить все поля из списка «Выбранные поля»
Для перехода к следующему шагу необходимо нажать кнопку «Далее». На следующем шаге необходимо выбрать вид отчета и нажать кнопку «Далее». В следующем окне необходимо задать имя запроса и выбрать вид дальнейших действий: · Открыть запрос для просмотра данных; · Изменить макет запроса. Затем нажать на кнопку «Готово». Список литературы
1. Златопольский Д.М. 1700 заданий по Microsoft Excel. Основы информатики/ под ред. Д.М. Ремизова – С.Пб.: БХВ - Петербург, 2003 – 544с. 2. Замятина Е.Б., Лядова Л.Н., Мызникова Б.И., Фролова Н.В. Введение в Информатику. Учебное пособие. Часть 1. Теоретические основы/ под ред. Е.Б. Замятиной. – Пермский государственный университет. Пермь: Пресс-мастер, 2004 – 144с. 3. Могилёв А.В., Пак Н.И., Хеннер Е.К. Практикум по информатике/ под ред. А.В. Могилёва – М.: Академия, 2001 – 608c. 4. Симонович С.В. Информатика. Базовый курс/ под ред. С.В. Симонович – С.Пб.: Питер, 2005. – 640 с.
Популярное: Как распознать напряжение: Говоря о мышечном напряжении, мы в первую очередь имеем в виду мускулы, прикрепленные к костям ... Почему человек чувствует себя несчастным?: Для начала определим, что такое несчастье. Несчастьем мы будем считать психологическое состояние... ©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (807)
|
Почему 1285321 студент выбрали МегаОбучалку... Система поиска информации Мобильная версия сайта Удобная навигация Нет шокирующей рекламы |