- •Типы субд.
- •Понятие Базы данных, субд.
- •Эволюция развития баз данных.
- •Недостатки ис
- •Реляционная модель базы данных, её свойства.
- •Архитектуры удалённых Баз данных.
- •Физическая и логическая структура баз данных.
- •Архитектура централизированных сетевых баз данных: файл-сервер, клиент-сервер, сервер приложений.
- •Обеспечение целостности данных: на уровне таблицы, на уровне базы данных.
- •Нормализация отношений. Понятие функциональной зависимости. 1 и 2 нормальные формы.
- •Нормализация отношений. Понятие транзитивной зависимости. 3я нормальная форма.
- •Создание объекта dao.Recordset, его типы.
- •Свойства объекта dao.Recordset.
- •Объекты dao (Data Access Object)
- •Операции над отношениями в бд.
- •Методика создания приложения средствами Access и vba
- •Объекты ado.
- •17. Создание запросов на выборку на sql языке (Select)
- •18.Создание групповых запросов на sql языке.
Свойства объекта dao.Recordset.
BOF возвращает True, если текущая запись находится перед первой записью в объекте типа Recordset.
EOF возвращает True, если текущая запись находится после последней записи в объекте типа Recordset.
Bookmark – закладка.
Для добавления записи используется метод AddNew объекта типа Recordset.
rs.AddNew.
Для определения количества записей в рекордсете используется свойство RecordCount объекта типа Recordset. Но если recordset типа Dynaset, Snapshot или ForwardOnly, то свойство RecordCount покажет число записей, только при достижении последней записи. В этом случае нужно сразу переместиться к концу recordset.
Для передвижения по записям в объекте типа RecordSet используется 5 методов:
Move Используется для перемещения к произвольной записи. В качестве параметра передаётся номер записи.
MoveFirst Используется для перемещения к первой записи.
MoveLast Используется для перемещения к последней записи.
MoveNext Используется для перемещения к следующей записи.
MovePrevious Используется для перемещения к предыдущей записи.
Номер текущей записи определяется с помощью свойства AbsolutePosition. Отсчёт начинается с нуля. Т.е. если текущая запись - первая, то AbsolutePosistion покажет 0. Если текущая запись находится до первой или после последней, то свойство AbsolutePosition покажет -1.
метод Clone() позволяет скопировать объект Recordset в другой объект Recordset со всеми закладками (обычно используется, когда очень надо иметь более, чем одну текущую запись).
Объекты dao (Data Access Object)
Свойства и методы объекта DataBase:
Name – имя базы данных.
CreateQueryDef – создаёт запрос.
Set запрос=объект.CreateQueryDef(имя,[SQL])
Запрос – объектная переменная, представляющая создаваемый запрос.
Объект – объектная переменная открытый объект DataBase.
Имя – имя запроса.
SQL – выражение типа string – инструкция SQL.
Метод Execute используется для выполнения запроса, изменения и удаления.
Свойство RecordsAffected – подсчёт изменённых или удалённых записей.
Метод OpenQuery объекта DoCMD используется для открытия запроса на выборку.
DoCMD.OpenQuery(имя запроса)
DoCMD – объект Access с помощью которого можно выполнять команды Access.
Операции над отношениями в бд.
Для манипулирования отношениями используют операции реляционной алгебры. Отношения реляционной алгебры - это множества, поэтому средства работы с отношениями базируются на традиционных операциях теории множеств, которые дополняются некоторыми операциями, специфичными для баз данных. Чаще всего выделяют следующие операции реляционной алгебры:
объединение отношений;
пересечение отношений;
разность отношений;
произведение отношений;
деление отношений;
ограничение отношения;
проекция отношения;
соединение отношений.
Кроме перечисленных выше, в СУБД, как правило, реализуются так же операция присваивания, позволяющая сохранять в базе данных результаты обработки, операция переименования атрибутов и операция агрегации.
He вдаваясь в детали, операции реляционной алгебры могут быть описаны следующим образом.
1)Операция объединения двух отношений позволяет создать отношение, включающее все строки отношений-операндов. Отношения операнды должны иметь одинаковый набор атрибутов.
2) Результат операции пересечения отношений - отношение, содержащее строки, которые входят одновременно в оба отношения-операнда. Отношения-операнды должны иметь одинаковый набор атрибутов.
3) Разность отношений используется для выделения строк, которые входят в первое отношение-операнд и не входят во второе. Операнды должны иметь одинаковый набор атрибутов.
4) При выполнении операции произведения двух отношений каждая строка первого отношения-операнда сцепляется (конкатенируется) с каждой строкой второго отношения-операнда. Сцепленные строки образуют отношение-результат. Число строк в отношении-результате равно произведению числа строк в отношениях-операндах. Множества атрибутов отношений-операндов не должны пересекаться.
5) Операция деления "обратна" операции умножения.
6) Операция ограничения (селекции) - это выбор из отношения подмножества кортежей, удовлетворяющих заданному условию. Например, если задано отношение R[XYZ], то операция селекции определяется как:
Sel (R) = { R[XYZ] / R.B = b }, где В - атрибут R. B=b
Пример операции селекция: вывести список служащих ростом 175 из отношения, приведенного. Sel (EHW)= EHW.PocT=175 Результат:
Номер Рост Вес;
101 175 95
303 175 80
801 175 87
7) Операция проекции позволяет выбрать из отношения-операнда определенные столбцы (атрибуты отношения), исключая повторения. Например, для отношения R[XYZ] операция проекции определяется как:
Pr (R)={R.B|, где В - множество атрибутов R. В
Pr (EHW)= EHW.Bec атрибута А (обозначается А->В), если в любой момент времени каждому значению атрибута А соответствует не более одного значения атрибута В. Обратите внимание, что термин функциональная зависимость соответствует понятию функции в математике. Если неключевой атрибут зависит от всего составного ключа и не зависит от его частей, то говорят о полной функциональной зависимости атрибута от составного ключа. Если атрибут А зависит от атрибута В, а В зависит от атрибута С, но обратная зависимость отсутствует, то говорят, что атрибут С зависит от А транзитивно.