Презентация MS Access.ppt
- Количество слайдов: 48
Типы данных в MS Access Текстовый Текст или комбинация текста и чисел, например, адреса, а также числа, не требующие вычислений, например, номера телефонов, инвентарные номера или почтовые индексы. Сохраняет до 255 знаков. Поле МЕМО Длинный текст или числа, например, примечания или описания. Сохраняет до 65 536 знаков. Числовой Данные, используемые для математических вычислений, за исключением финансовых расчетов. Дата/время Значения дат и времени. Денежный Используется для денежных значений и для предотвращения округления во время вычислений. Счетчик Автоматическая вставка уникальных последовательных (увеличивающихся на 1) или случайных чисел при добавлении записи. Логический Данные, принимающие только одно из двух возможных значений, таких как «Да/Нет» , «Истина/Ложь» . Поле объекта OLE Объекты OLE (такие как документы MS Word, электронные таблицы MS Excel, рисунки, звукозапись или другие данные в двоичном формате), созданные в других программах, использующих протокол OLE. Гиперссылка может иметь вид пути UNC либо адреса URL. Мастер подстановок Создает поле, позволяющее выбрать значение из другой таблицы или из списка значений, используя поле со списком.
Постановка задачи 1 Николай Валерьевич Стерх работает инструктором по прыжкам с парашютом. Он хочет хранить данные о членах своего парашютного клуба. Для каждого парашютиста необходимо хранить контактную информацию (имя, адрес электронной почты и телефонный номер), уровень опыта (начинающий, продвинутый или опытный), наличие собственной необходимой экипировки, а также количество совершенных прыжков.
1. Таблицы 2. Отношения 3. Поля всего одна таблица нет отношений, поскольку всего одна таблица данные, указанные в постановке задачи 4. Ключи 5. Типы данных поле е-мэйл выбрано для уникальной идентификации каждого парашютиста обозначены типы данных, которые могут быть помещены а базу
Процесс создания базы данных в Access состоит из следующих этапов 1. Создание файла базы данных 2. Создание таблицы 3. Создание столбцов путем: - ввода имени столбца; - выбора типа данных; - указания размера поля, если это необходимо. 4. Указание первичного ключа. 5. Ввод данных.
1 Создание файла базы данных
2 Создание таблицы в режиме конструктора Компоненты базы данных Access
3 А Создание столбцов
3 Б Создание столбцов с условием на значение
4 Создание первичного ключа После того как столбцы и первичный ключ определены, проект таблицы необходимо сохранить используя пункт меню «Сохранить» в меню «Файл» . Для таблицы введите имя Парашютист.
5 Ввод данных в таблицу Если ввести в столбцы «экипировка» и «уровень» значения, которые нарушают условие на значение, то при попытке сохранить строку появится сообщение об ошибке.
Отображение данных таблицы
Постановка задачи 2 Представьте себе, что вы работаете над проектом онлайн-игры «Звездные волки» . Ваша задача вести запись времени, подлежащего к оплате каждым из игроков. Для игры необходимо хранить основную информацию об игроках, включая их адреса электронной почты, пароли, используемые ими для доступа к игре, имена и телефонные номера. К тому же каждый раз, когда игрок входит в игру, создается и записывается номер сессии, кроме этого должно фиксироваться время начала и окончания сессии, чтобы можно было определить, сколько времени игрок провел на сайте и, следовательно, сколько он должен заплатить.
Создание базы данных и таблиц
Создание отношений между таблицами
Создание отношений между таблицами Выбираем столбец email в таблице Gamer и перетаскиваем его на столбец gamer$email таблицы Session
Ввод информации Данные можно вводить в таблицы, содержащие внешние ключи, только после того, как данные были введены в таблицы, на которые они ссылаются. В противном случае данные будут отвергнуты из-за нарушения целостности ссылочных данных. Целостная ссылочных данных также подразумевает, что когда в столбец Gamer$email вводятся значения, они должны соответствовать значениям уже введенным в таблицу Gamer
Постановка задачи 3 Профессор Олег Борисович Музыкин является руководителем музыкального факультета. В своем рабочем кабинете он установил компьютер и хочет использовать его для хранения данных обо всех дисциплинах, которые читаются на факультете. В настоящее время с профессором Музыкиным работаю пять преподавателей. Он хочет использовать компьютер для хранения основной контактной информации о каждом преподавателе т. е. идентификационный номер, имя, номер кабинета и телефонный номер. Для каждой дисциплины на факультете необходимо хранить информацию о ее коде, названии и количестве аудиторных часов. Вначале чтения каждому разделу дисциплины присваивается шифр, с помощью которого администрация следит, какой преподаватель читает данный раздел. Наконец, Олег Борисович хочет иметь возможность хранить информацию о студентах и знать, какие дисциплины студент уже изучил. Информация, которую он хотел бы иметь о каждом студенте, включает идентификационный номер, имя, номер комнаты в общежитии и телефонный номер. Профессору также необходимо знать, какую оценку студент получил в итоге по каждой дисциплине. Запишите концептуальную модель данных для профессора и на ее основе создайте физическую базу данных используя СУБД MS Access. Создайте запросы к базе данных.
Создание базы данных и таблиц
Отношения между таблицами
Извлечение данных в MS Access Существует три основных операции извлечения данных для реляционных баз данных: выборка, проекция и слияние. Операции выполняют следующие действия: - Выборка извлекает поднабор строк; - Проекция извлекает поднабор столбцов; - Слияние объединяет данные из двух таблиц. SQL выполняет все эти операции с помощью одного выражения Select. Основная форма выражения Select показана ниже: Select [список столбцов] From [имя таблицы];
Отображение всех столбцов и строк Предположим, что нам нужен полный список членов парашютного клуба с полной информацией о них. Это самый простой запрос SQL (SQL-выражения Select обычно называют запросами).
Использование списка столбцов Предположим, что нам не нужны все столбцы, мы хотим включить в результаты запроса только имя, фамилию и адрес электронной почты всех членов парашютного клуба.
Сортировка с помощью оператора ORDER BY Требуется отсортировать всех парашютистов по фамилиям, которые хранятся в соответствующем столбце таблицы.
Сортировка по нескольким столбцам Требуется отобразить уровень квалификации каждого парашютиста, а также количество прыжков и фамилию. Результаты должны быть отсортированы в алфавитном порядке по уровню квалификации. Порядок тех парашютистов, чей уровень квалификации совпадает, должен определяться количеством прыжков (от меньшего к большему).
Выбор строк с помощью оператора WHERE Необходимо просмотреть значение полей «фамилия» и «прыжки» для парашютистов, совершивших более 20 прыжков.
Выбор строк с помощью оператора WHERE с текстовыми значениями Необходимо просмотреть имена и фамилии всех членов клуба, у кого есть собственная экипировка
Оператор LIKE Предположим, что нам необходимо отобразить имена, фамилии, электронные адреса и телефоны всех парашютистов, у которых телефонный номер начинается с цифр « 915» .
Сложные условия WHERE Предположим, что нам необходимо получить список имен, фамилий, количества прыжков и уровней квалификации для тех участников, кто совершил более 10 прыжков и имеет средний уровень квалификации.
Сложные условия WHERE Предположим, что нам необходимо получить список имен, фамилий, количества прыжков и уровней квалификации для тех участников, кто совершил более 15 прыжков либо имеет средний уровень квалификации.
Сложные условия WHERE Предположим, что нам необходимо получить список имен, фамилий, количества прыжков и уровней квалификации для тех участников, кто совершил более 10 и менее 20 прыжков.
Сложные условия WHERE Предположим, что нам необходимо получить список имен, фамилий, количества прыжков и уровней квалификации для участников начинающего или среднего уровня квалификации.
Сложные условия WHERE Предположим, что нам необходимо получить список имен, фамилий, количества прыжков и уровней квалификации для участников начинающего или среднего уровня квалификации.
Сложные условия WHERE Предположим, что нам необходимо получить список имен, фамилий, количества прыжков и уровней квалификации для тех участников, кто совершил более 10 и менее 20 прыжков.
Сложные условия WHERE Предположим, что нам необходимо получить список имен, фамилий, количества прыжков и уровней квалификации для участников кроме начинающего и среднего уровня квалификации.
Сложные условия WHERE Предположим, что нам необходимо получить список имен, фамилий, количества прыжков и уровней квалификации для всех участников у которых есть собственная экипировка и чей уровень квалификации начинающий или средний. .
Функции обобщения В Access есть множество встроенных функций. Некоторые из них называются функциями обобщения, поскольку работают с группами строк, а не с отдельными строками. Обычно эти функции выглядят следующим образом Function [выражение] Часто используемые функции обобщения: Sum – Сумма значений столбца выбранных строк Avg – Среднее арифметическое значение столбца выбранных строк Count – Количество значений столбца выбранных строк Count(*) – Количество выбранных строк, включая пустые Max – Наибольшее значение столбца Min - Наименьшее значение столбца
Функция Sum Получить общее количество прыжков, совершенных всеми участниками клуба.
Функция Count(*) Получить общее количество строк в таблице, независимо от того есть ли в них пустые значения.
Использование оператора WHERE с функциями обобщения Получить общее количество прыжков, совершенных всеми участниками клуба с собственной экипировкой.
Использование оператора DISTINCT Иногда необходимо знать не то, сколько всего строк в таблице или удовлетворяют ли они определенному критерию, а то, сколько всего различных значений в определенном столбце таблицы. Например какие различные уровни квалификации встречаются в таблице парашютист.
Группировка и функции обобщения Необходимо вычислить среднее значение прыжков для каждого уровня квалификации.
Ограничение количества групп с помощью оператора HAVING Оператор WHERE используется для ограничения количества строк, включенных в результат запроса. Оператор HAVING выполняет такую же функцию, но для обобщений. Например необходимо получить список всех групп уровней квалификации, чье среднее количество прыжков меньше 20.
Использование в одном запросе операторов HAVING и WHERE Предположим необходимо получить среднее значение количества прыжков для тех квалификационных групп, в которых это среднее значение больше 10. Но при этом учесть только тех участников, у которых есть собственная экипировка, то есть все те, у кого нет собственной экипировки не должны участвовать в подсчетах среднего значения.
Объединение данных из нескольких таблиц Все рассмотренные ранее запросы включали данные из одной таблицы. Однако некоторые задачи требуют извлечения данных из нескольких таблиц. Объединение данных из нескольких таблиц в один результирующий набор называется операцией слияния. Получите список номеров разделов, шифров курсов, названий курсов и количество часов для каждого раздела.
Объединение операций слияния с другими условиями оператора WHERE Получите список номеров разделов, шифров курсов, названий курсов и количество часов для каждого раздела. Только для дисциплины 2345. Только для дисциплин 2345 или 2367.
Объединение более двух таблиц Получить список оценок для каждого раздела. Список должен включать в себя шифр раздела, идентификационный номер студента, имя и фамилию студента, оценку. Список должен быть отсортирован вначале по шифру, затем по фамилии, затем по имени.
Подзапросы – это запросы, содержащиеся внутри других запросов. Внутренний запрос всегда выполняется первым, а затем его результаты сравниваются с результатами внешнего запроса. Результаты внутреннего запроса как бы исполняются внешним запросом. Необходимо получить список всех участников парашютного клуба, совершивших прыжков больше среднего количества. Используем два запроса SQL/ Первый будет вычислять среднее значение. Затем возьмем это среднее значение и поместим в условие оператора WHERE? Который будет отбирать участников, совершивших большее количество прыжков, чем указано в среднем значении.
Подзапросы