Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Базы данных освоение работы в MS Access 2007. Электронное пособие
.pdf
• 2 - для транспортных средств, с момента выпуска которых прошло
более 10 лет, но не более 15 лет;
• 3 - для транспортных средств, с момента выпуска которых прошло
более 15 лет.
2. Построить перекрестный запрос по определению средней цены по типу
кузова и модели. В качестве варианта может быть запрос определение средней
цены по цвету и типу кузова.
3. Создайте таблицу «Архив», содержащей данные обо всех поставщиках,
которые поставляли машины, «возраст» которых больше 15 лет.
4. Создайте запрос на добавление в таблицу Архив данных о
поставщиках, которые поставляли машины, «возраст» которых больше 10 лет.
5. Создайте запрос на уменьшение цены в зависимости от коэффициента
возраста машины, т.е.цена должна уменьшиться на коэффициент * 15%
Вопросы к работе № 8
1. Как создать вычисляемое поле?
2. Для чего нужны перекрестные запросы?
3. Чем отличается запрос на добавление записей от запроса на создание
таблицы.
4. В чем особенность запроса на удаление?
5. Если необходимо изменить значение какого-то поля в таблице, что
нужно сделать?
71

ТЕМА 9
Сводные таблицы, кнопочная форма
Сводные таблицы.
Главная кнопочная форма.
Практическая работа № 9.
Вопросы к работе № 9.
Сводные таблицы
Сводные таблицы и сводные диаграммы являются инструментами
анализа и представления большого количества данных.
Сводная таблица – интерактивная таблица, позволяющая анализировать и
обобщать данные путем подбора полей для строк и столбцов, группировки,
сортировки и фильтрации данных.
Сводная диаграмма – средство наглядного графического представления
данных для выполнения сравнений, выявления закономерностей и трендов
путем подбора полей для рядов и категорий, сортировки, группировки и
фильтрации данных, а также добавления легенд и выбора типа диаграммы.
Режимы сводной таблицы и сводной диаграммы есть у таблиц, запросов и
форм.
При открытии объекта в режиме сводной таблицы или сводной
диаграммы, на экране отобразятся их макеты, а также список полей, доступных
для добавления в макеты.
При построении поля из списка перетаскиваются в нужную область
макета или через выделения нужного поля в списке, а затем из
раскрывающегося списка выбираем нужную область. В области с заголовком
Перетащите сюда поля столбцов и Перетащите сюда поля строк макета
сводной таблицы нужно перенести поля, значения которых должны составлять
столбцы и строки таблицы. В область Перетащите сюда поля итогов или
деталей – поля таблицы, данные в которых следует проанализировать.
Поля для фильтрации всей сводной таблицы необходимо перенести в
область Перетащите сюда поля фильтра. Область фильтрации позволяет
определить критерии отображения данных.
Построение сводной диаграммы – аналогичен. На диаграмме
(гистограмма с группировкой):
категории соответствуют строкам сводной таблицы,
ряды – столбцам,
72

численные значения данных (деталей или итогов) отображаются в виде
столбцов различной высоты.
В разделе Тип вкладки Конструктор (Работа со сводными
диаграммами) Ленты через кнопку Изменить тип диаграммы можно
изменить тип.
Главная кнопочная форма
Для управления БД на вкладке Работа с базами данных предусмотрена
панель, на которой находится:
Диспетчер кнопочных форм,
задать пароль для базы данных,
Создать MDE.
Создание главной кнопочной формы
Главная кнопочная форма связывает воедино все объекты БД и является
аналогом меню и представляет собой иерархическую структуру кнопочных
форм. Создается через Диспетчер кнопочных форм.
Алгоритм создания главной кнопочной формы:
Запуск Диспетчера кнопочных форм.
Создается пустая главная кнопочная форма.
Создаются страницы кнопочной формы:
Кнопка Создать – ввести имя.
Текст по умолчанию отображается у главной формы. Для смены главной
формы, выделяют последнюю и нажимают кнопку По умолчанию.
Установим связь между главной кнопочной формой и всеми ее
страницами:
Выделяется имя главной формы в списке.
Нажать кнопку Изменить.
В окне Изменение страницы кнопочной формы вводим название этой
формы.
Создаем в этом окне пункты этой формы., которые будут связаны с
соответствующими страницами главной кнопочной формы через кнопку
Создать.
В появившемся окне Изменение страницы кнопочной формы задается
текст надписи, соответствующей пункту, выбрать команду (например Перейти
к кнопочной форме) и название открываемой кнопочной формы.
73

В главной кнопочной форме создается дополнительный элемент Выход,
для которого устанавливается команда Выйти из приложения.
После установления связей для пунктов главной кнопочной формы
закрыть диспетчер и перейти в список форм базы данных. При этом появилась
форма с именем Кнопочная форма.
Запускаем эту форму.
В ней доступны все пункты, созданные в диспетчере. Но они пустые.
Запускаем диспетчер кнопочных форм
Поочередно выбираем каждую страницу кнопочной формы и нажать
Изменить.
Через кнопку Создать создаем требуемые пункты.
Например, есть в базе форма frmStudents для ввода и редактирования
информации о студентах. Добавляем для связи с ней два пункта в кнопочную
форму Студенты: Ввод информации о студенте и Редактирование информации
о студенте.(позволяет только просматривать и редактировать данные о уже
внесенных студентах и запрещает добавлять новых) При этом первому из этих
пунктов будет назначена команда Открыть форму для добавления, а
второму – Открыть форму для изменения.
Для доступа пользователя ко всем созданным формам, добавляют на
каждую из них элемент На главную, а команда Перейти к кнопочной форме. И
указать имя главной кнопочной формы.
Параметры запуска БД
Для запуска главной кнопочной формы при запуске БД предусмотрен
раздел настройки Параметры запуска в Office (текущая база данных). В поле
Заголовок приложения – указать имя главной кнопочной формы и выбрать ее
в раскрывающемся списке Форма просмотра созданную главную кнопочную
форму.
MDE файл
MDE файл поставляется конечному пользователю, чтобы он не мог
просматривать и изменять исходный программный код.
Создается этот файл через соответствующую кнопку на панели Работы с
базами данных и в появившемся окне вводится имя файла.
74

Практическая работа № 9
1. Создать сводную таблицу.
2. Создать сводную диаграмму.
3. Создать кнопочную форму.
Вопросы к работе № 9
1. Для чего нужна сводная таблица?
2. Какими средствами осуществляется анализ БД?
3. .Возможности визуализации данных в Access 2007?
4. Этапы создания кнопочной формы?
75

ТЕМА 10
Язык запросов SQL
Типы данных языка SQL.
Выражения и функции языка SQL.
Операторы языка SQL.
Оператор SELECT.
Применение агрегатных функций в операторе SELECT.
Вложенные запросы.
Внешнее объединение (правое, левое).
Операторы манипулирования данными языка SQL.
Защита информации в БД.
Практическая работа № 10.
Пример выполнения задания.
Вопросы к работе №10.
Типы данных языка SQL
Изучение языка начнем с ознакомления типов данных, с которыми он
работает.
В стандарте SQL существует поддержка почти всех типов данных (целое
число, символьная строка, числа с плавающей запятой). Дополнительно
поддерживается тип для даты и времени.
В операторах SQL используются выражения, которые строятся из
стандартных знаков арифметических операций (плюс, минус, умножение,
деление). Деление также как и в языках программирования может быть разным.
В современном стандарте есть возможность выполнять операции
сложения и вычитания над датами.
Большинство СУБД поддерживает работу со строками (конкатенация).
Стандартные типы языка SQL:
целые;
длинные целые (с удвоенной точностью);
вещественные;
символьные.
В стандарт SQL2 добавлены:
BIT(n);
76

строка битов переменной длины (BIT VARYING(n));
календарный тип данных (DATE);
дата и время (TIME STAMP);
временной интервал (INTERVAL).
Большинство коммерческих СУБД поддерживают дополнительные типы
данных неспециализированных стандартов: например, тип данных для
структурированного текста небольшого объема.
Специфика реализации отдельных типов данных серьезным образом
влияет на результаты запросов к БД. Особенно это касается типов данных
DATE, TIME STAMP и INTERVAL.
Стандарт определяет стандартную константу типа USER, т.е. мы сами
можем задавать тип данных.
Выражения и функции языка SQL
Довольно часто требуется узнать, сколько записей соответствует тому
или иному запросу, какова сумма значений некоторого числового столбца, его
максимальное, минимальное и среднее значения. Для этого служат итоговые
функции.
COUNT(параметр) – возвращает количество записей, указанных в
параметре. Если требуется получить количество всех записей, то в качестве
параметра следует указать символ «*».
SUM(параметр) – возвращает сумму значений указанного в параметре
столбца. Параметр может представлять собой и выражение, содержащее имя
столбца.
AVG(параметр) – возвращает среднее арифметическое всех значений
указанного в параметре столбца. Параметр может представлять собой
выражение, содержащее имя столбца.
MAX(параметр) – возвращает максимальное значение в столбце,
указанном в параметре.
MIN(параметр) – возвращает минимальное значение в столбце,
указанном в параметре.
Функции обработки значений. При работе с данными часто приходится
их обрабатывать (преобразовывать к нужному виду): выделить в строке
некоторую подстроку, удалить ведущие и заключительные пробелы, округлить
число, вычислить квадратный корень, определить текущее время и тому
подобное.
Строковые функции принимают в качестве параметра строку и
возвращают после ее обработки строку или NULL
77

SUBSTRING(строка FROM начало [FOR длина]) – возвращает
подстроку, получающуюся из строки, которая указана в качестве параметра
«строка». Подстрока начинается с символа, порядковый номер которого указан
в параметре «начало», и имеет длину, указанную в параметре «длина».
Нумерация символов строки ведется слева направо, начиная с 1. квадратные
скобки здесь указывают лишь на то, что заключенное в них выражение FOR
длина не используется, то возвращается подстрока от «начало» и до конца
исходной строки. Значения параметров «начало» и «длина» должны выбираться
так, чтобы искомая подстрока действительно находилась внутри исходной
строки. В противном случае функция SUBSTRING вернет NULL
UPPER(строка) – переводит все символы указанной в параметре строки
в верхний регистр.
LOWER(строка) – переводит все символы указанной в параметре строки
в нижний регистр.
TRIM(LEADING | TRAILING | BOTH [‘символ’] FROM строка) –
удаляет ведущие, заключительные или и другие символы из строки. По
умолчанию удаляемым символом является пробел, поэтому его можно не
указывать чаще всего эта функция используется именно для удаления
пробелов.
Числовые функции. В качестве параметра могут быть данные,
возвращающие не только числовой тип, но и NULL (неопределенное значение).
POSITION (целевая_Строка IN Строка) – ищет вхождение целевой
строки в указанную строку. В случае успешного поиска возвращает номер
положения ее первого символа, иначе – 0.
EXTRACT(параметр) – извлекает элемент из значения типа дата-время
или из интервала
CHARACTER_LENGTH(строка) – возвращает количество символов в
строке.
ABS(число) – возвращает абсолютное значение числа.
MOD(число1, число2) – возвращает остаток от деления первого числа на
второе.
LN(число) – возвращает натуральный логарифм числа.
EXP(число) – возвращает основание натурального логарифма в степени
число).
POWER(число1, число2) – возвращает число1 в степени число2.
SQRT(число) – возвращает квадратный корень из числа.
Функции даты-времени.
CURRENT_DATE – возвращает текущую дату.
CURRENT_TIME(число) – возвращает текущее время.
78

CURRENT_TIMESTAMP(число) – возвращает дату и время.
Вычисляемые выражения. Вычисляемые выражения строятся из
констант (числовых, строковых, логических), функций, имен полей и данных
других типов путем соединения их арифметическими, строковыми,
логическими и другими операторами. В свою очередь, выражения могут быть
объединены посредством операторов в более сложные выражения. Для
управления порядком вычисления выражений используются круглые скобки.
Логические операторы AND< OR< NOT. Арифметические операторы +,- ,*,/.
Строковый оператор только один - || - оператор конкатенации или склейки
строк. При составлении выражений необходимо следить, чтобы операнды
операторов имели допустимые типы.
Операторы языка SQL
Условно делятся на 2 подъязыка:
Язык определения данных DDL:
CREATE TABLE <имя таблицы> (<имя столбца><тип данных>[not
null])– создание таблицы
DROP TABLE<имя таблицы> – удаление таблицы
ALTER TABLE <имя таблицы>({ADD,MODIFY,DROP}<имя
столбца>[<тип данных>][NOT NULL]) – изменение структуры таблицы
CRAETE INDEX <имя индекса>ON<имя таблицы>(<имя
столбца>[ACS|DESC]…)– создание индекса
DROP INDEX <имя индекса>– удаление индекса
CREATE VIEW <имя представления>[(<имя столбца>[,<имя
столбца>]…)]AS<оператор SELECT>– создание представление
DROP VIEW <имя представления>– удаление представления
GRAND – назначение привилегий
REVOKE – удаление привилегий
Язык манипулирования данными DML:
SELECT – выборка записей
UPDATE <имя таблицы> – изменение записей
SET <имя столбца>={<выражение>, NULL}
INSERT INTO<имя таблицы>[(<список столбцов>)]VALUES(<список
значений>)– вставка новых записей
DELETE <имя таблицы>[WHERE<условие>]– удаление записей
79

Оператор SELECT
Синтаксис оператора:
SELECT [ALL|DISTINCT](<Список полей>|*)
FROM<список таблиц> [WHERE<Предикат – условие выбора или
соединения>]
[GROUP BY <Список полей результата>]
[HAVING<Предикат – условие для группы>]
[ORDER BY <Список полей, по которым упорядочить выбор>],
где ALL – ключевое слово. В результирующий набор строк включаются
все строки удовлетворяющие условиям запроса. В результирующий набор
могут попасть одинаковые строки. Что нарушает принципы теории отношений.
Для того чтобы исключить попадание в результат одинаковых строк
используется DISTINCT.
Список полей – поля которые мы хотим получить в результате. * - все
поля
FROM – в этом разделе задается перечень исходных таблиц или
запросов. Т.е. из каких таблиц мы хотим брать данные.
WHERE – задаются условия отбора строк результата или условия
соединения картежа условных таблиц.
GROUP BY – задается список полей для группировки.
HAVING – условие отбора в каждую группу
ORDER BY – список полей, по которым идет сортировка.
Предикаты раздела WHERE:
1. Предикаты сравнения (равно, больше, меньше, меньше или равно,
больше или равно, не равно)
2. Предикат Between A and B. Он определяет, значение лежит между А и
В. Предикат истинен когда сравнимые значения попадают в заданный интервал,
включая границы.
3. Предикат Not Between A and B. Истинен тогда, когда значение не
попадает в этот интервал и границы не включаются.
4. Предикат вхождения IN (множество). Предикат истинен тогда, когда
сравниваемое значение входит в множество заданных значений.
5. Предикат Not IN (2,21,4,23…). Предикат истинен тогда, когда
значение не входит в множество заданных значений.
6. Предикат сравнения с образцом LIKE. Этот предикат требует задание
шаблона, с которым сравнивается заданное значение. Предикат истинен если
заданное значение соответствует шаблону. И ложен в противоположном
случае.
80
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
