- •1.3. Понятия реляционной модели: атом, домен, кортеж, отношение. Термины реляционной модели и теории множеств. Свойства реляционных баз данных. Реляционная алгебра. Операции над множествами. Примеры.
- •1Nf. Отношение находится в первой нормальной форме тогда и только тогда, когда значения всех его атрибутов атомарны.
- •3Nf. Отношение находится в третьей нормальной форме тогда и только тогда, когда оно находится во второй нормальной форме и не содержит транзитивных зависимостей.
- •2.2.История развития и стандарты языка sql. Наборы команд sql и примеры операторов. Типы данных, управляющие конструкции языка Transact-sql.
- •Операторы манипулирования данными -- операторы добавления, изменения и удаления записей.
- •Insert – добавление информации к таблице
- •2.6. Курсоры в Microsoft sql Server: примеры создания, использования и удаления.
- •2.8 Субд Oracle – сравнение с другими сетевыми реляционными субд, состав, архитектура, типы данных, язык, примеры запросов. Язык sql3 – способы работы с объектами в реляционных бд.
- •2.9 Субд MySql – сравнение с другими сетевыми реляционными субд, интерфейсы управления и администрирования, организация данных, типы данных, язык, примеры запросов.
- •3.1 Ретроспектива развития однопользовательских субд. Сравнительная характеристика современных однопользовательских субд.
- •Типы переменных:
- •Массивы
- •Объекты
- •Доступность
- •Обработка ошибок
- •Параметры процедур и функций.
- •Чтобы задать свойство раздела формы или отчета
- •4.2. Способы организации Интернет-доступа к сетевым субд. Примеры программирования активных серверных страниц для организации доступа к субд в технологиях asp, asp.Net, php.
- •5.1. Недостатки и ограничения реляционной модели. Постреляционные бд, примеры. Введение объектной модели в язык sql3. Примеры sql-запросов, содержащих объекты.
- •5.2. Идея ообд. Преимущества и недостатки объектно-ориентированных баз данных. Стандарт odmg: общие сведения.
- •Преимущества:
- •Недостатки:
2.8 Субд Oracle – сравнение с другими сетевыми реляционными субд, состав, архитектура, типы данных, язык, примеры запросов. Язык sql3 – способы работы с объектами в реляционных бд.
Попытки совместить средства манипулирования данными реляционной модели и способы описания внешнего мира объектно-ориентированной модели получили развитие в языке SQL-3.
1) Характеристики объекта определяется описанием строки таблицы. Поэтому вводится специальная возможность описания нового типа данных:
Create type Address (
number char (6),
street char (30),
aptno integer,
city char (30),
state char (2),
zip integer
);
На основе нового типа могут быть определены таблицы, например:
Create table Addresses of Address;
Новые типы допускается использовать и для определения столбцов (т.е. игнорируется требование атомарности атрибутов реляционной модели):
Сreate table People of new type Person (
name char (30),
address Address,
birthdate date,
);
Наследование определяется с помощью фразы under.
Create type Employee under Person (
empno char(10),
dept ref(Department)
);
Здесь атрибут dept является ссылкой на объект, хранящийся в таблице Department. Т.е. в понятиях реляционной модели в этом столбце должен быть записан внешний ключ, указывающий на на одну из строк таблицы Department. На самом деле, в SQL-3 предполагается, что каждый объект имеет уникальный идентификатор - OID, именно он используется при создании ссылок на объекты.
Также в операторе CREATE TABLE можно определить и методы доступа к вновь созданным типам данных:
Create table People of new type Person (
name char(30),
address Address,
birthdate date
function age(:р ref(Person)) return date;
begin
current_age:=:р.birthdate-current_date;
return current_age;
end;
);
В этом примере задана функция age, которая вычисляет текущий возраст объекта типа Person, хранимого в таблице People. К данной функции можно обращаться из оператора SELECT.
Oracle8i совместим с минимальным уровнем ANSI/ISO (SQL92). Он поддерживает большинство возможностей, заложенных в более продвинутые уровни SQL92, и даже некоторые из SQL3, но зачастую эти возможности реализованы в нем по-своему. В Oracle создан свой язык для создания триггеров, хранимых процедур и просто скриптов (в Oracle их принято называть безымянными блоками). Этот язык получил название PL/SQL (Program Language SQL). Внешней процедурой в Oracle является подпрограмма, хранимая в DLL, или метод элемента библиотеки Java-класса.
В версии 8.0 были введены объектные типы данных. Такие типы данных можно применять при создании локальных и пакетных переменных, при объявлении колонок БД и при объявлении типа записи в таблицах БД. Причем в случае, когда объект олицетворяет всю запись целиком в качестве первичного ключа, используется так называемая объектная ссылка (REF). REF является вполне самостоятельным типом данных и может использоваться для ссылки на такую объектную запись из других таблиц. Объекты поддерживают только инкапсуляцию, но не поддерживают не наследования, не полиморфизма.