русс | укр

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

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

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

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


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

Проектирование модели реальной БД на примере создания


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


Создание таблиц

Предисловие

Содержание

Ms Access

Лекции

Создание базы данных

Макарова М.Е.

учитель информатики высшей категории,

старший учитель

«Школа»

© Copyright Макарова М.Е.

Проект «Уроки информатики»

http://uchinfo.com.ua


 

Соглашение об использовании информации:

 

Представленная в настоящей книге информация отражает точку зрения и личный опыт преподавания в школе темы «Базы данных и СУБД» ее автора, которые могут отличаться от мнения читателя. Принимая во внимание быстро меняющиеся условия развития информационных технологий и происходящих в связи с этим изменений в подходах к преподаванию информатики, автор оставляет за собой право корректировать свою точку зрения и вносить дополнения и изменения в текст настоящей публикации.

 

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

 

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

 


Стр.
Предисловие…………………………………………………………………… 1. Проектирование БД «Школа» Создание таблиц ……………………… 1.1 Проектирование модели реальной БД на примере создания БД «Школа»……….................................................................................. 1.2 Разработка структуры таблиц и типов полей……………….….…….. 1.3 Допустимые данные для таблиц БД «Школа»…………………...…… 1.4 Создание таблиц БД «Школа» и связей между ними………………… 1.5 Схема данных БД «Школа»………………………………………......... 2. Создание форм…………………………………………………................. 2.1 Создание автоформы…………………………………… 2.2 Создание формы с помощью команды Форма пункта меню Вставка (или кнопки Новый объект на ПИ, рис.2.1)………………… 2.3 Создание форм в окне Форма главного окна БД…………….............. 2.3.1 Создание формы Учителя………………………………………... 2.3.2 Использование картинки в качестве фона для формы…………. 2.4 Создание подчиненных форм…………………………………………. 3. Сортировка и поиск данных. Фильтры……………………………………. 3.1 Сортировка……………………………………………………………… 3.2 Поиск с помощью команды Найти……………………………………. 3.3 Фильтры………………………………………………………………… 3.3.1 Фильтр по выделенному…………………………………………. 3.3.2 Расширенный фильтр…………………………………………….. 4. Запросы……………………………………………………………………… 4.1 Основные виды запросов……………………………………………… 4.2 Создание простых запросов…………………………………………… 4.3 Вычисления в запросах………………………………………………… 4.4 Вычисления в запросах с использованием встроенных функций…... 4.5 Перекрестные запросы………………………………………………… 4.6 Построение запроса на обновление данных………………………….. 5. Отчеты………………………………………………………………………. 5.1 Способы создания отчета……………………………………………… 5.1.1 Создание автоотчета……………………………………………… 5.1.2 Создание отчета с помощью мастера……………………………. 5.2 Создание итогового отчета на основе нескольких таблиц………….. 5.3 Рекомендации по работе с отчетами………………………………….. 5.3.1 Изменение масштаба отображения отчета……………………… 5.3.2 Печать отчета……………………………………………………… 5.3.3 Добавление и удаление областей в отчете……………………… 5.3.4 Изменение фона элементов отчета………………………………. Примечание……………………………………………………………………. Маска ввода…………………………………………………………………. Заключение……………………………………………………………………..    

 



 

Дорогой читатель!

 

Преподавание темы «Базы данных» довольно часто вызывает определенные трудности у многих учителей информатики, особенно начинающих. Я сама прошла через это. Свои первые впечатления от работы по этой теме я могу охарактеризовать такими словами: «в принципе все понятно, но не знаю, как лучше построить урок».

Я пробовала давать небольшие задания из 2-3 таблиц и простых запросов к ним, но такой подход не позволяет продемонстрировать всю мощь понятия БАЗА ДАННЫХ.

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

После нескольких лет проб и ошибок я разработала структуру БД «Школа», которую и предлагаю Вашему вниманию.

Уроки по этой методике я провожу уже 7 лет (!). Отличительной особенностью именно данной методики создания БД состоит в том, что дети прекрасно знают предметную область, для которой строится БД. Количество объектов, создаваемых в этой БД, свободно вписывается в 10 уроков (плюс 2 урока по введению в БД). Среди моих учеников – 80% успевают выполнить все задания полностью.

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

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

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

Объясните детям сразу, что уроки по БД будут отличаться от уроков по другим темам тем, что на протяжении этих 10 часов они будут создавать один проект – базу данных «Школа» и что этот проект можно создать, только если на каждом уроке они выполняют все задания. Т.е., без таблиц нельзя создать ни формы, ни запросы, ни отчеты; без запросов не получаться некоторые отчеты.

Если Ваши ученики будут аккуратно выполнять все задания и вести конспект по этой теме, то они не только получат в школе хорошую оценку, но и смогут потом в ВУЗе успешно сдать зачет или экзамен по Ms Access (тоже уже проверено на опыте выпускников нашей гимназии).

Приглашаю и Вас применить на своих уроках эту простую, но тщательно продуманную и проверенную семилетним опытом методику.

 

 

1. Проектирование БД «Школа»

БД «Школа».

 

Мы будем создавать работающую БД со всеми основными объектами: таблицами, формами, запросами и отчетами, используя всем нам хорошо знакомую предметную область – школу. Школа – это сложная структура со множеством объектов. Перечислим эти объекты: ученики, учителя, классы, администрация, изучаемые предметы, оценки по этим предметам, библиотека, столовая, кружки, родительский комитет, зарплата учителей, школьная мебель и оборудование, ремонт помещений и т.п. и т.д. Создать БД, которая бы полностью охватывала бы все эти объекты и взаимосвязи между ними, мы никак не успеем в рамках тех часов, которые выделены нам на изучение этой темы. Поэтому выделим только самые основные и хорошо знакомые ученикам.

Основные объекты:

1. Ученики. 2. Учителя. 3. Классы. 4. Предметы.

 

Логическая структура:

 

 


1 – 4 : Основные объекты БД

5 – 8 : Объекты, с помощью которых осуществляется связь основных объектов друг с другом:

5 – 6 : Связи между объектами, которые реализуются с помощью дополнительных таблиц,

7 – 8 : Связи между объектами, которые реализуются с помощью прямых связей между таблицами.

На рис.1.1 стрелки, соединяющие объекты БД, помечены значками 1 и ¥. Это означает вид связи один-ко-многим. Например, в одном классе учатся много учеников или, один ученик получает много оценок.

Отношение многие-ко-многим (¥и¥)может применяться в такой ситуации: один и тот же учитель читает в разных классах и один и тот же предмет читают разные учителя. Например, на английский язык класс делиться на группы и в этих группах работают разные учителя или математику в разных классах читают разные учителя и т.п. А связь один-к-одному обозначает точное совпадение количества записей в таблицах.

 

1.2 Разработка структуры таблиц и типов полей в БД «Школа»

 

Таблица Имя поля Тип данных Примечание
Учителя №_учителя Счетчик Ключевое поле
  Фамилия Текстовый  
  Имя Текстовый  
  Отчество Текстовый  
  Классное_ руководство Логический  
Класс Название_КЛ Текстовый Ключевое поле
  №_учителя Числовой Мастер подстановки из таблицы Учителя.
Ученики №_ученика Счетчик Ключевое поле
  Фамилия Текстовый  
  Имя Текстовый  
  Отчество Текстовый  
  Класс Текстовый Мастер подстановки из таблицы Класс
  Дата_рождения Дата – время  
  Адрес Текстовый  
  Телефон Текстовый Маска ввода
Предмет №_предмета Счетчик Ключевое поле
  Название Текстовый  
Преподает №_учителя Числовой Мастер подстановки из таблицы Учителя
  №_предмета Числовой Мастер подстановки из таблицы Предмет
  Класс Текстовый Мастер подстановки из таблицы Класс
Получает №_ученика Числовой Мастер подстановки из таблицы Ученики
  №_предмета Числовой Мастер подстановки из таблицы Предмет
  Период Текстовый Мастер подстановки на основе фиксированного набора данных
  Оценка Числовой Мастер подстановки на основе фиксированного набора данных
    Табл. 1.1  

 


1.3 Допустимые данные для таблиц БД «Школа»

 

Хотя мы и так довольно сильно сократили количество объектов в нашей БД «Школа», но если мы будем вносить в таблицы реальное количество классов в школе (10-40), учеников в них (30), изучаемых предметов и учителей, читающих эти предметы, то наша БД станет очень большой и все время придется потратить только на ввод данных в нее. Поэтому мы и здесь сократим свою работу до минимума.

В нашей школе будет 3 класса: 11-А, 11-Б и 11-В (в вашей могут быть совершенно другие классы, например, 5-Ё). В каждом классе учится по 5 учеников, в школе работает 6 учителей (3 классных руководителя и 3 учителя-предметника) и дети изучают в каждом классе по 5 предметов. Один и тот же предмет в разных классах могут вести разные учителя и один и тот же учитель может читать разные предметы.

Для того чтобы мы знали, какие конкретно данные вводить в таблицы БД, составим списки предметов (табл. 1.2), которые будут читаться в разных классах (у нас обучение профильное и в разных классах читаются разные предметы, а у вас это могут быть просто разные классы – 5, 7, 10)

 

11-А гуманитарный класс 11-Б класс с углубленным изучением химии 11-В класс с углубленным изучением физики
Литература Литература Литература
История Математика Математика
Английский Химия Физика
Информатика Информатика Информатика
Физкультура Физкультура Физкультура
  Табл. 1.2  

 

1.4 Создание таблиц БД «Школа» и связей между ними

Откроем программу Ms ACCESS, выберем место на диске, где будет храниться наша БД, назовем ее Школа.mdb и приступим к созданию таблиц.

Сначала будем создавать таблицы, при построении которых не используется Мастер подстановки (табл.1.1). Это таблицы УчителяиПредмет.

 
 

В главном окне БД выбираем Создание таблицы в режиме конструктора (рис.1.2) и делаем такие поля для таблицы Учителя (рис.1.3):

 

Поле №_учителя делаем ключевым – выделяем его и нажимаем кнопку Ключевое поле на панели инструментов (ПИ). Значения для этого поля вводятся автоматически при заполнении таблицы и не повторяются, даже если какая-то запись будет удалена.

Тип поля Класное_руководство устанавливаем Логический, значение – «Да» или «Нет».При вводе данных достаточно поставить галочку в этом поле.

Для того, чтобы избежать «необъяснимых» ошибок при создании запросов и отчетов, в имени полей нельзя использовать пробел, его лучше заменить знаком подчеркивания «_».

Таблицу Учителя можно сразу и заполнить данными, чтобы продемонстрировать потом работу Мастера подстановки. Переходим из режима конструктора в режим таблицы и вносим данные (рис.1.4):

 

 
 

 

 


 
 

Аналогично создаем таблицу Предмет (рис.1.5 и 1.6). Названия предметов берем из таблицы 1.2.

 

 
 

Теперь создадим таблицу Класс. Тоже в главном окне БД выбираем Создание таблицы в режиме конструктора и делаем такие поля (Рис.1.7):

 

Что такое Мастер подстановки? Это очень полезная возможность, которая используется для того, чтобы брать уже готовые данные из таблицы-источника и одним щелчком мыши вводить их в данную таблицу. Это позволяет, во-первых, значительно ускорить заполнение таблиц данными, а во-вторых, избежать ошибок и опечаток.

Например, при вводе названия класса можно написать: 11А, 11-А, 11 а и т.п. Для нас это все один и тот же 11-А класс, а для БД – это различные данные. Чтобы избежать такого разночтения и используется Мастер подстановки.

Порядок действий:

1. В списке типов полей выбираем Мастер подстановки (рис.1.7)

2. В появившемся окне переключатель устанавливаем в позицию Объект «столбец подстановки» будет использовать значения из таблицы или запроса. (рис.1.8)

 
 

 
 

3. В окне (рис.1.9) выбираем таблицу, из которой будем брать данные. Сейчас это таблица – Учителя.

 

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

Здесь еще можно выбрать столбец Классное_руководство, чтобы было сразу видно, кто из учителей является классным руководителем, чтобы учителю-предметнику не «навязать» еще и классное руководство! Программа ACCESS будет сохранять в таблице Класс номер учителя, а на экран при работе с этой таблицей выведет фамилию.

 

 
 

5. На рис. 1.10 видно, как будет выглядеть наш столбец подстановки:

6. Нажимаем кнопку Готово, переходим в режим таблицы и смотрим, как это работает (рис.1.11 и 1.12):

 
 

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

Таблица Ученики. Для облегчения дальнейшего ввода данных в нее, в полях Дата_рождения и Телефон применим шаблоны – формат поля и маску ввода (см. Приложение на стр.47) (Рис. 1.13 и 1.14):

 

 
 

Вот готовая таблица Ученики (рис.1.15):


Теперь займемся таблицей Преподает. Эта таблица не содержит ключевого поля и все значения в ней определяются Мастером подстановки для полей №_учителя, №_предмета и Класс (табл.1.1). Вот заполненная таблица Преподает с сортировкой данных по классам (рис.1.16) и по учителям (рис.1.17):

 
 

Теперь приступим к самой большой таблице – Получает. Эта таблица должна содержать такое количество записей:

225=количество учеников * количество предметов в классе * количество периодов обучения

Период обучения – 1 семестр, 2 семестр, год. Таким образом, в нашей БД будут находиться только семестровые и годовые оценки учеников по всем предметам.

 

Поля №_ученика и №_предмета формируются с помощью Мастера подстановки так же, как и в предыдущих таблицах. А вот для полей Период и Оценки, мы создадим фиксированные наборы данных:

1. В столбце Тип данных Конструктора таблицы выбираем Мастер подстановки.

2. В открывшемся окне (рис. 1.18) переключатель устанавливаем возле «Будет введен фиксированный набор значений»


3. В следующем окне (рис.1.19) заполняем нужные нам данные. И получим «внутренний» для этой таблицы столбец подстановки.

Аналогично можно поступить и с полем Оценки. Обратите внимание, что в демонстрационной БД, которую Вы получили вместе с этой книгой используется 5-ти бальная система оценок. Учителям в Украине оценки нужно поменять на 12-ти бальную систему.

Когда начнем вводить информацию в таблицу, то в поле Период возникнет раскрывающийся список с периодами обучения (рис.1.20):

 
 

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

А вот пример заполненной таблицы для первого ученика (рис.1.21):

 
 

Еще 15 раз по столько – и золотой ключик у вас в кармане!

:) - Дети, если вы не будете хорошо учиться, то вам всю жизнь придется заполнять БД!

 

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

 

1.5 Схема данных БД «Школа»

Перейдем в главное окно БД и в ПИ нажмем кнопкуСхема данных .Появится соответствующее окно (рис.1.22). Если в процессе создания таблиц мы использовали Мастер подстановки, то Ms ACCESS самостоятельно установит нужные связи между полями в таблицах. Расположение таблиц в окне может быть другое. Вы можете для удобства сравнения с рисунком перетащить их, ухватившись за заголовок таблицы. Если на вашей схеме появилось меньше 6 таблиц, то недостающие таблицы нужно добавить. Нажмите правую кнопку мыши внутри окна схемы данных и выберите команду Добавить. Если же у вас появились лишние таблицы с именами Класс1 или Преподает3, то их нужно удалить, т.к. они не дадут нам построить запросы. Для удаления лишней таблицы, нужно сначала удалить связи, которые у нее есть с другими таблицами. Нажимаем правую кнопку мыши на линии связи и выбираем команду Удалить. Если же между таблицами нет линий связи, то вы не использовали мастер подстановки. Связи можно установить и в окне Схема данных. Выделаем нужное поле в нужной таблице и перетягиваем его на другую таблицу.

 
 

Теперь изменим свойства связей в БД. Посмотрим на рис.1.1. Там на стрелках стоят значки 1 и ¥. Такие же значки нужно установить и в схеме данных.

Для этого:

 
 

1. На каждой линии связи нажимаем правую кнопку мыши и выбираем команду Изменить связь (рис.1.23)

 

2. В появившемся окне (рис.1.24) ставим флажок Обеспечение целостности данных и жмем ОК.

3. Получаем результат (рис.1.25) - в одном классе учиться много учеников.

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

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

 
 

В результате должна получиться такая картинка (рис.1.26):

 

Всю основную работу по проектированию и созданию таблиц БД «Школа» мы сделали, а заполнять таблицы можно по мере наличия свободного времени!

 

 




<== предыдущая лекция | следующая лекция ==>
Cистема телеконференций Usenet (от Users Network). | Создание автоформы.


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


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

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

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


 


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

 
 

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

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