
- •Оглавление
- •1. Цели и задачи лабораторного практикума
- •2. Программа и порядок выполнения лабораторных работ
- •3. Требования к оформлению отчета о выполнении лабораторной работы
- •4. Лабораторная работа №1 Разработка приложений на языке программирования Visual Basic for Application в программной среде ms Office
- •1. Структура редактора vba
- •Окно Project – vba Project (окно проекта)
- •Окно редактирования кода
- •Окно Properties
- •Окно редактирования форм
- •2. Создание пользовательской функции. Процедура Sub
- •Способы выполнения процедуры Sub
- •Работа с макрорекордером
- •3. Создание процедур обработки событий элементов управления, встроенных в рабочие листы Excel
- •4. Объектная модель программы ms excel
- •Четыре ключевых объекта
- •Объект Application
- •Объект Workbook и семейство Workbooks
- •Объект Worksheet и семейство Worksheets
- •Объект Range
- •5. Работа с базами данных на основе модели dao (Data Access Objects)
- •Открытие базы(источника данных)
- •Объект Recordset
- •Объект Field
- •Порядок работы при объектном доступе к данным (предполагается, что база данных существует):
- •5.Индивидуальные задания для выполнения лабораторной работы №1
- •Контрольные вопросы
- •6.Лабораторная работа №2 «Создание sql – запросов при использовании специального программного средства субд Microsoft Access»
- •1. Основные понятия реляционных баз данных
- •2. Связывание реляционных таблиц. Типы связей между реляционными таблицами.
- •Связь типа “один-к-одному” (1:1)
- •Связь типа “один-ко-многим” (1:м)
- •Связь типа “много-ко-многим” (м: м)
- •3.Создание базы данных в ms Access с помощью конструктора
- •4.Определение связи таблиц
- •5.Общие сведения об sql. Простейшие sql-запросы.
- •Контрольные упражнения
- •6.Функции агрегирования в sql- запросах
- •Контрольные упражнения
- •7.Использование вложенных запросов
- •7.Индивидуальные задания для выполнения лабораторной работы №2
- •Контрольные вопросы
- •8.Лабораторная работа №3 “Язык разметки гипертекста html ”
- •1.Общие сведения
- •2. Наиболее часто используемые теги и их описание
- •3.Технология css
- •8. Индивидуальные задания для выполнения лабораторной работы №3
- •Контрольные вопросы:
- •9.Лабораторная работа №4 «Создание интерактивных, динамически изменяемых страниц с использованием JavaScript»
- •1.Общие сведения
- •2.Операторы управления JavaScript
- •3.Размещение JavaScript на html-странице
- •4.События
- •5.Функции
- •10.Индивидуальные задания для выполнения лабораторной работы №4
- •Контрольные вопросы
- •Список литературы
- •Приложение. Образец формы титульного листа отчета о выполнении лабораторной работы
2. Связывание реляционных таблиц. Типы связей между реляционными таблицами.
Основным структурным компонентом базы данных, как уже отмечалось, является таблица. При определении состава таблиц следует руководствоваться правилом: в каждой таблице должны храниться данные только об одном классе объектов. Например, в одной таблице нельзя хранить анкетные данные студента и фамилии преподавателей, которым он сдавал экзамены, т.к. это свойства разных классов объектов.
Если в базе данных должна содержаться информация о разных классах объектов, то она должна быть разбита на отдельные таблицы. Связь между таблицами осуществляется с помощью общих полей.
Связи между любыми двумя таблицами относятся к одному из трех типов: один-к-одному (1:1) , один-ко-многим (1:М) и много-ко-многим (М: М).
Связь типа “один-к-одному” (1:1)
При этом типе связи каждой записи в одной таблице соответствует не более одной записи в другой таблице. Этот вид связи встречается довольно редко. В основном в тех случаях, когда часть информации об объекте либо редко используется, либо является конфиденциальной (такая информация хранится в отдельной таблице, которая защищена от несанкционированного доступа).
Связь типа “один-ко-многим” (1:м)
При таком типе связи каждой записи в одной таблице соответствует несколько записей в связанной таблице. Этот наиболее распространенный тип связей. Для его реализации используются две таблицы. Одна из них представляет сторону "один", другая - сторону "много". Например, нужно иметь информацию о студентах и результатах сдачи ими экзаменов (дата сдачи, предмет, оценка и т.д.). Если все это хранить в одной таблице, то ее объем неоправданно возрастет, т.к. в ней для каждой записи об очередном экзамене должны повторяться все анкетные сведения о студенте. Поскольку “Студент” и “Экзамены” - это разные классы объектов, то и свойства их должны храниться в разных таблицах.
Решением этой задачи является создание двух таблиц. Условно назовем их “Студенты” и “Экзамены”. В каждой из них хранятся соответствующие свойства. Для связи этих таблиц нужно использовать только часть информации о студенте, сдающем экзамен. Но она должна однозначно определять каждого студента среди всех. Такой информацией может явиться, например, номер зачетки (он уникален для каждого студента).
В таблице со стороны "один" (в нашем примере “Студенты”) такие поля, как уже отмечалось, называются ключевыми.
Связь типа “много-ко-многим” (м: м)
При таком типе связи множеству записей в одной таблице соответствует множество записей в связанной таблице. Большинство современных СУБД непосредственно не поддерживают такой тип связи. Для его реализации такая связь разбивается на две связи типа один-ко-многим. Соответственно, для хранения информации потребуется уже три таблицы: две со стороны "много" и одна со стороны "один". Связь между этими тремя таблицами также осуществляется по общим полям.
Тип связи между отношениями в СУБД Microsoft Access зависит от способа определения связываемых полей.
Связь «один-ко-многим» создается в том случае, когда только одно из полей связываемых таблиц является ключевым.
Связь «один-к-одному» создается в том случае, когда связываемые поля обоих связываемых таблиц являются ключевыми.
Связь «многие-ко-многим» фактически является двумя отношениями «один-ко-многим» с третьей таблицей, первичный ключ которой состоит из полей — внешних ключей двух других таблиц.