Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СРС и метод.указания для студентов заочников (...docx
Скачиваний:
16
Добавлен:
25.08.2019
Размер:
1.47 Mб
Скачать

Базы данных.

Microsoft Access является СУБД реляционного типа, в которой разумно сбалансированы все средства и возможности, типичных для современных СУБД. Реляционная база упрощает поиск, анализ, поддержку и защиту данных, поскольку они сохраняются в одном месте. Access в переводе с английского означает «доступ». MS Access — это функционально полная реляционная СУБД. Кроме того, MS Access одна из самых мощных, гибких и простых в использовании СУБД. В ней можно создавать большинство приложений, не написав ни единой строки программы, но если нужно создать нечто очень сложное, то на этот случай MS Access предоставляет мощный язык программирования — Visual Basic Application.

Популярность СУБД Microsoft Access обусловлена следующими причинами:

  • доступность в изучении и понятность позволяют Access являться одной из лучших систем быстрого создания приложений управления базами данных;

  • возможность использования OLE технологии;

  • интегрированность с пакетом Microsoft Office;

  • полная поддержка Web-технологий;

  • визуальная технология позволяет постоянно видеть результаты своих действий и корректировать их;

  • наличие большого набора «мастеров» по разработке объектов

Основными видами объектов, с которыми работает программа, являются:

  • Таблица - это объект, который используется для хранения данных. Каждая таблица включает информацию об объекте определенного типа. Таблица содержит поля(столбцы), в которых хранятся различного рода данные, и записи(которые называются также строками). Для каждой таблицы должен быть определен первичный ключ(одно поле, имеющее для каждой записи уникальное значение или несколько полей, совокупное значение которых для каждой записи уникально). Т.е. первичный ключ - это однозначный идентификатор каждой записи таблицы. Для увеличения скорости доступа к данным отдельные поля таблицы (или их совокупность) могут быть объявлены индексами. Индекс – средство, ускоряющее поиск и сортировку в таблице за счет использования ключевых значений, которое позволяет обеспечить уникальность строк таблицы. Первичный ключ таблицы индексируется автоматически. Не допускается создание индексов для полей с некоторыми типами данных.

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

  • Форма - это объект, предназначенный в основном для ввода данных, отображения их на экране или управления работой приложения.

  • Отчет - объект, предназначенный для создания документа, который впоследствии может быть распечатан или включен в документ другого приложения.

  • Страница - используется для доступа к данным текущей базы данных Access.

  • Макрос - объект, представляющий собой структурированное описание одного или нескольких действий, которые должен выполнить Access в ответ на определенное событие.

Модуль - объект, содержащий программы на Microsoft Visual Basic, которые позволяют разбить процесс на более мелкие действия и обнаружить те ошибки, которые нельзя было бы найти с использованием макросов.

Задания:

  1. Создать базу данных. Ввести и отформатировать данные.

    • Загрузите СУБД ACCESS. Сначала нужно создать новую базу данных. После этого создайте таблицу, выполнив команду Создание таблицы в режиме конструктора. Этот режим предполагает введение данных о именах полей и их типах. Заполните такую таблицу:

      Поле

      Тип данных

      Описание

      Счетчик

       

      Фамилия

      Текстовый

       

      Имя

      Текстовый

       

      Дата

      Дата

      Дата рождения

      Пол (м)

      Логический

      Пол мужской?

      Улица

      Текстовый

       

      Дом

      Числовой

       

      Квартира

      Числовой

       

      Класс

      Числовой

       

      Группа

      Текстовый

      Группа здоровья по физкультуре

      Хобби

      Текстовый

       

      Глаза

      Текстовый

      Цвет глаз

    • Созданную таблицу надо сохранить под именем "Класс"

    • Откройте созданную таблицу и введите следующие данные:

      Фамилия

      Имя

      Дата

      пол

      Улица

      Дом

      Квартира

      Класс

      Группа

      Хобби

      Глаза

      1

      Суханов

      Сергей

      16.02.81

      Да

      Чердынская

      23

      74

      10

      основная

      тяжелая атлетика

      зеленые

      2

      Пирогов

      Юрий

      5.12.83

      Да

      Куйбышева

      6

      31

      8

      основная

      футбол

      голубые

      3

      Лебедева

      Света

      16.06.85

      Нет

      Пушкина

      37

      65

      6

      специальная

      вязание

      карие

      4

      Голдобин

      Сергей

      23.05.88

      Да

      Леонова

      12

      10

      3

      основная

      лыжи

      голубые

      5

      Ельшина

      Наташа

      24.05.82

      Нет

      Чердынская

      37

      48

      9

      специальная

      чтение

      серые

      6

      Суханова

      Наташа

      20.12.86

      Нет

      Ленина

      12

      22

      5

      подготовительная

      шитье

      зеленые

      7

      Петрова

      Света

      18.04.82

      Нет

      Пушкина

      37

      3

      9

      основная

      лыжи

      серые

      8

      Горина

      Оля

      20.12.84

      Нет

      Свиязева

      66

      99

      7

      подготовительная

      аэробика

      карие

      9

      Попов

      Михаил

      7.07.87

      Да

      Леонова

      72

      6

      4

      подготовительная

       

      голубые

      10

      Сергеев

      Саша

      30.11.89

      Да

      Куйбышева

      3

      31

      2

      основная

      каратэ

      зеленые

      11

      Павлова

      Елена

      13.12.85

      Нет

      Пушкина

      5

      6

      6

      основная

      аэробика

      карие

      12

      Емельянова

      Наташа

      25.05.81

      Нет

      Попова

      40

      47

      10

      основная

      шитье

      зеленые

      13

      Евдокимов

      Михаил

      18.08.80

      Да

      Чердынская

      3

      40

      7

      основная

      футбол

      зеленые

      14

      Евсеева

      Елена

      14.10.84

      Нет

      Ленина

      14

      82

      9

      основная

      лыжи

      серые

      15

      Суханова

      Света

      29.07.80

      Нет

      Куйбышева

      37

      32

      11

      основная

      аэробика

      карие

    • Во всей таблице замените слог но на слог ни.

  2. Ответьте на приведенные ниже вопросы

    • Кто учится в 8 классе?

    • Кто родился в 1984 году?

    • Кто живет на улице Пушкина?

    • У кого номе дома меньше 50?

    • У кого мужские имена?

    • Кто родился весной?

    • У кого фамилия начинается на букву С?

    • У кого номер класса кратен 3, и он живет на улице Пушкина или Ленина? Кто с серыми глазами учится в классе с нечетным номером, или число в дате его рождения больше 15?

    • У кого номер класса простое число, или специальная группа, и его имя начинается на Н? Кто из основной группы не живет на улице Пушкина или Ленина?

Для поиска необходимых данных нужно создать запрос с помощью конструктора.

  1. Создать базу данных, состоящую из связанных таблиц. Создадим базу данных, которая будет хранить результаты экзаменов студентов одной группы за один семестр. Можно обойтись и одной таблицей, в которую включить поля «Фамилия», «Имя», «Дисциплина», «Преподаватель», «Оценка». Но тогда очень много данных будет повторяться, т.к. каждый студент сдает несколько экзаменов, и каждый экзамен сдают многие студенты. Поэтому создадим три таблицы — «Студенты», «Предметы», «Оценки» — и заполним их. В первых двух таблицах первое поле имеет тип счетчик, а остальные — текстовый тип. В третьей таблице первое поле имеет тип счетчик, а остальные — числовой тип.

Таблица «Предметы»

Код предмета

Название

Преподаватель

1

Программирование

Половина

2

Психология

Сивак

3

Статистика

Полыгалова

4

Информационные системы

Клигман

Таблица «Студенты»

Код студента

Фамилия

Имя

1

Антонова

Марина

2

Бирих

Яков

3

Волков

Константин

4

Волошина

Светлана

5

Кашина

Наталья

6

Ленц

Алексей

7

Матвеев

Роман

8

Наумова

Татьяна

9

Юдинцева

Оксана

Таблица «Оценки»

Код оценки

Код студента

Код предмета

Оценка

1

1

1

5

Щелкните на пиктограмму «Схема данных». Вы увидите созданные нами таблицы и связи. Access автоматически связал поля с одинаковыми именами и совместимыми типами. В других случаях это можно сделать вручную, с помощью мыши — достаточно перетащить одно поле на другое и получить между ними связь.

Выберите в таблице «Оценки» поле «Код предмета» и укажите тип «мастер подстановок». В качестве таблицы источника данных выберите «Предметы» и поля «Код» и «Название». Теперь в режиме таблицы можно выбирать названия из списка.

Сделайте то же самое для студентов. А теперь сделаем так, чтобы подстановка выполнялась из двух полей, то есть выводила фамилию и имя. Для этого выберите поле «Код студента», щелкните на вкладке «Подстановка», выберите «Источник строк» и щелкните кнопку с многоточием справа. Откроется построитель запросов, работа с которым не отличается от работы с обычным запросом. Вместо поля «Фамилия» введите строку [Фамилия]&” ”&[Имя]. Теперь при подстановке видна и фамилия студента, и его имя.

Добавьте еще двух-трех студентов в таблицу «Студенты». Перейдите в таблицу «Оценки». Обратите внимание, что добавленные студенты оказались в конце списка. Чтобы упорядочить список по алфавиту, вызовите построитель запросов для поля «Код студента» и установите сортировку по возрастанию. Сделайте то же самое для поля «Код предмета».

Обратите внимание, что Access позволяет хранить несколько записей о сдаче одним и тем же студентом одного и того же предмета. Сделаем так, чтобы набор студент-предмет стал уникальным. Для этого в режиме конструктора установим для этих полей опцию «ключевое поле».

Поле «Код оценки» скроем в таблице с помощью установления нулевой ширины столбца. Изменим подписи к полям «Код студента» и «Код предмета». Для этого выберите строку «Подпись» на вкладке «Общие». При этом таблица «Оценки» должна выглядеть так:

Студент

Предмет

Оценка

Антонова Марина

Информационные системы

5

Бирих Яков

Информационные системы

4

Волков Константин

Информационные системы

5

Волошина Светлана

Информационные системы

5

Антонова Марина

Психология

5

Бирих Яков

Психология

5

Волков Константин

Психология

4

Волошина Светлана

Психология

5

  1. Измените ввод в поле Оценка, чтобы вместо цифр выставлялось «отлично», «хорошо» и т. д. Для этого создайте отдельную таблицу и используйте мастер подстановок. С помощью Схемы данных установите связь. Заполните таблицу «Оценки». Рассчитайте средний балл каждого студента. Для этого найдите на ленте кнопку «Групповые операции» и нажмите ее. Примените групповую операцию «среднее» — Avg. Выведите список студентов, сдавших экзамены на оценки "хорошо" и "отлично".

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

    • из таблицы «Оценки» — Предмет, Оценка;

    • из таблицы «Студенты» — Фамилия, Имя;

    • из таблицы «Предметы» — Преподаватель.

Выберите представление данных по студентам, с использованием подчиненной формы. Откройте подчиненную форму и примените сортировку по возрастанию для предметов. Откройте форму студенты в режиме конструктора. Выделите и удалите метку «оценки» (сверху от места внедрения подчиненной формы). Подгоните «вручную» размеры формы. Обратите внимание на две навигационные панели внизу формы, одна из них позволяет просмотреть информацию по студентам, вторая по предметам. Создайте свою навигационную панель. Для этого перейдите в режим конструктора, элементы управления(вкладка Конструктор) . Убедитесь, что включен режим мастеров (кнопка с изображением волшебной палочки вдавлена). Выберите элемент «Кнопка» и поместите его внутрь формы, установите категорию «Переход по записи», действие «Первая запись», подберите картинку.Сделайте еще 4 кнопки — «Предыдущая запись», «Следующая запись», «Последняя запись», «Найти запись». Выделите все 5 кнопок. Установите выравнивание по нижнему краю, сделайте равным интервал между кнопками, а затем уменьшите его до нуля (вкладка Упорядочить). Щелкните правой кнопкой мыши на квадрат в левом верхнем углу формы. Выберите свойства и установите «поле номера записи» в значение Нет. Сделайте то же самое для подчиненной формы. Откройте готовую форму «Студенты». Создайте макрос, который открывает форму. Сохраните базу, закройте и заново откройте ее. Написанный макрос выполняется автоматически.

. Задания.

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

  2. Составить Базу Данных “Записная книжка”, в которой представлены адреса и телефоны родственников, друзей и знакомых. Составить запрос, который по фамилии человека определял бы его адрес и телефон.

  3. Составить Базу Данных “Домашняя библиотека”, в которой были бы представлены книги по разделам, например, фантастика, детективы и т.д. Составить запрос, который по фамилии автора определял какие книги есть в библиотеке.

  4. Составить Базу Данных “Телефонный справочник”, в которой представлены адреса и телефоны оптово-закупочных фирм, строительных фирм и т.д. Составить запрос, который по названию фирмы определял бы его адрес и телефон.

  5. Составить Базу Данных “Телефонный справочник”, в которой представлены адреса и телефоны магазинов, парикмахерских, библиотек и т.д. Составить запрос, который по номеру магазина (или парикмахерской) определял бы его адрес и телефон.

  6. По сведениям о планетах Солнечной системы составьте базу данных “Планеты Солнечной системы”. Запишите ее с именем PLNET.

 

Планета

Расстояние

Отн.объем

Отн.масса

Отн.размер

Меркурий Венера Земля Марс Юпитер Сатурн

 

 

 

Малая Малая Эталон Малая Большая Большая

  1. На продовольственном складе хранятся:

    • яблоки 1000 кг по цене 5000 рублей

    • лимоны 2000 кг по цене 9000 рублей

    • мандарины 1500 кг по цене 10000 рублей

    • курага 1200 кг по цене 20000 рублей

    • бананы 2000 кг по цене 6000 рублей.

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

  1. В аптечном складе хранятся лекарства. Сведения о лекарствах содержатся в специальной ведомости: наименование лекарственного препарата; количество (в шт.); цена; срок хранения на складе (в месяцах). Выяснить, сколько стоит самый дорогой и самый дешевый препарат; сколько препаратов хранится на складе более 3 месяцев; сколько стоят все препараты, хранящиеся на складе.

Торговый склад производит уценку хранящейся продукции. Если продукция хранится на складе дольше 10 месяцев, то она уценивается в 2 раза, а если срок хранения превысил 6 месяцев, но не достиг 10, то в 1,5 раза. Ведомость уценки товаров должна содержать информацию: наименование товара, количество товара(шт.), цена товара до уценки, срок хранения товара, цена товара после уценки, общая стоимость товаров после уценки. Выяснить максимальный минимальный сроки хранения товаров на складе; максимальную и минимальную цены товаров до уценки и после уценки . .

Вопросы.

  • Какие действия можно выполнять с символьными данными, с числовымми данными в БД?

  • Какие существуют логические операции и как они выполняются в БД?

  • Каким образом (по каким командам ) происходит поиск в БД?

  • В какой форме отражаются результаты поиска в БД?

  • Каким образом (по каким командам ) происходит организация запроса к БД?