Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Задачи, недоступные обеим моделям
Пример реальных потребностей моделирования, с которыми не справляется ни реляционный подход, ни нынешний объектный. Пусть мы собираем информацию о лицах в течение длительного периода времени. База проектировалась 10 лет назад, и в ней имелся атрибут личности «партийность». Для него был определен вполне достаточный логический тип. Через несколько лет вдруг выяснилось, что логического типа уже недостаточно, и для «партийности» требуется указывать значение из списка. Еще через несколько лет графа «партийность» в организации, ведущей базу данных, оказалась упразднена. Таким образом, для данных об одном и том же лице, относящихся к одному периоду времени, должен использоваться булев атрибут «партийности», для данных, относящихся к другому периоду, – символьный атрибут (внешний ключ?), а для данных, относящихся к третьему периоду, атрибут должен отсутствовать. Другими примерами структурных изменений во времени могут служить упразднение атрибута «национальность» или добавление атрибута «государственный пенсионный страховой номер». Сегодняшние подходы к моделированию данных (что реляционный, что объектный) сориентированы в первую очередь на статическое моделирование прикладной области и мало рассчитаны на динамику (историю). В лучшем случае можно долго и тщательно разрабатывать схему данных, а уж потом фиксировать ее и реализовывать в ИС, но никогда не эксплуатируется тезис о том, что «структура данных может изменяться (а не только пополняться)».
16. СУБД ORACLE (технологии и возможности ORACLE 8i, ORACLE 9i, ORACLE 10g) Начиная с версии 8 в СУБД ORACLE, появилась возможность хранения в таблицах неатомарных значений, а именно объектов в смысле объектного подхода. Существует два способа хранения объектов: в одном или нескольких полях реляционной таблицы или в специальной объектной таблице. Oracle8 Направления развития типов и структур данных: - расширение набора встроенных типов данных; - расширение спектра стандартных структур данных; - предоставление пользователям возможности определять собственные типы и структуры данных. Средства для работы с большими объектами В Oracle8 размер большого объекта может достигать 4 ГБ, а сами объекты полноценно участвуют в транзакциях. Большие объекты представлены как бинарные (BLOB) и символьные (CLOB для текстов типа CHAR и NCLOB — для NCHAR) и могут храниться внешним по отношению к СУБД образом, в файлах операционной системы. Этот вид хранения обслуживается типом данных BFILE и представлены в столбцах реляционных таблиц LOB-локаторами, содержащими ссылку на реальное место хранения значений. Операции с большими объектами выполняются средствами пакета DBMS_LOB.
Идентификаторы реляционных строк Каждая строка реляционной таблицы в СУБД Oracle8 имеет уникальный идентификатор. Этот идентификатор имеет тип ROWID. С каждой реляционной таблицей связан столбец типа ROWID и с именем ROWID, хранящий адреса строк. Столбец ROWID, доступный только на чтение, может использоваться наравне с другими столбцами таблицы в операторе SELECT и конструкции WHERE. Для работы с типом ROWID служит пакет DBMS_ROWID. Записи Записи трактуются в языке PL/SQL Oracle8 как совокупность разнотипных (быть может, структурных) компонентов, их можно хранить в столбцах реляционных таблиц, передавать в качестве параметров и т.п. Коллекции Коллекции в Oracle8 представляют собой одномерные массивы с подвижными верхними границами и подразделяются на два вида: · вложенные таблицы (таблицы могут являться атрибутами реляционных таблиц); · массивы переменного размера. Вложенная таблица - обычная реляционная таблица с одним столбцом. Число элементов во вложенной таблице практически не ограничено; существующие элементы могут удаляться, так что таблица не обязана являться непрерывным массивом.
Вложенная таблица как одномерный массив.
Массивы переменного размера — более привычная сущность. При их описании задается максимальный размер. К коллекциям применимы следующие методы: · EXISTS (проверяет, существует ли элемент коллекции с заданным номером); · COUNT (выдает текущее число элементов коллекции); · LIMIT (выдает NULL для вложенных таблиц и максимальный размер для массивов); · FIRST/LAST (выдают номер первого/последнего элемента коллекции); · PRIOR/NEXT (выдают номер предыдущего/следующего элемента коллекции или NULL, если таковой отсутствует);
· EXTEND (добавляет к коллекции заданное число элементов); · TRIM (удаляет из конца коллекции заданное число элементов); · DELETE (удаляет заданные элементы вложенной таблицы). Вызов этих методов оформлен по-объектному: за именем коллекции через точку следует имя метода, затем— аргументы в скобках. Объектные типы данных Объектный тип данных — это тип, определяемый пользователем, и задающий как структуру (атрибуты), так и поведение (методы) объектов. Разделение интерфейса и реализации относится к числу общих мест объектного подхода. Описание объектного типа состоит из двух частей. В интерфейсной декларируются атрибуты объектов и заголовки методов (процедур и функций). В теле типа приводится реализация методов.
|
||||||
Последнее изменение этой страницы: 2017-01-25; просмотров: 120; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.218.129.100 (0.008 с.) |