Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Обзор распространенных постреляционных СУБДСодержание книги
Поиск на нашем сайте
В настоящее время к числу распространенных постреляционных СУБД можно отнести: – UniVerse (Vmark Software); – Postgres (University of California at Berkeley – UCB); – Cache’ (Intersystems). Ниже приведено краткое описание особенностей синтаксиса для этих СУБД в части создания таблиц, имеющих множественные атрибуты, и составления запросов к таким таблицам. Основное изложение ведется на примере фрагмента базы данных «Сессии». Следует отметить, что в СУБД Cache’ реализован также и объектно-ориентированный подход к управлению базой данных. UniVerse В данной СУБД используется расширение стандарта ANSI SQL. Для описания множественного атрибута используется ключевое слово MULTIVALUED, а для механизма ассоциации – ASSOC. Множественный атрибут трактуется как вложенная таблица с одним атрибутом. Создание таблиц выглядит следующим образом: CREATE TABLE Студент ( ID INTEGER, Фамилия_И_О CHARACTER VARYING(50), Домашний_адрес CHARACTER VARYING(100), Телефон CHARACTER VARYING(20), Номер_группы CHARACTER VARYING(10), Дисциплина INTEGER MULTIVALUED, Семестр INTEGER MULTIVALUED, Оценка INTEGER MULTIVALUED, ASSOC Дисциплина (Семестр, Оценка), PRIMARY KEY (ID) )
CREATE TABLE Преподаватель ( ID INTEGER, Фамилия_И_О CHARACTER VARYING(50), Домашний_адрес CHARACTER VARYING(100), Телефон CHARACTER VARYING(20), Кафедра INTEGER, Должность CHARACTER VARYING(20), Дисциплина INTEGER MULTIVALUED, Семестр INTEGER MULTIVALUED, ASSOC Дисциплина (Семестр), PRIMARY KEY (ID) )
CREATE TABLE Дисциплина ( ID INTEGER, Наименование CHARACTER VARYING(50), Семестр INTEGER MULTIVALUED, Преподаватель INTEGER MULTIVALUED, ASSOC Семестр (Преподаватель), PRIMARY KEY (ID) ) Postgres (слайд 5) В данной СУБД используется вариант стандарта SQL-3 под названием PostgreSQL. Он реализует все основные команды языка SQL, а также позволяет использовать команды и типы данных языка программирования (например, Си). PostgreSQL позволяет создавать множественные атрибуты с внутренней структурой (например, вложенные таблицы с несколькими атрибутами). В настоящее время Postgres относят к классу объектно-реляционных СУБД. В ней реализовано наследование таблиц и некоторые другие объектно-ориентированные механизмы. Множественные поля реализуются в виде массивов. Создание таблиц выглядит следующим образом: CREATE TYPE TMarks AS (Дисциплина INTEGER, Семестр INTEGER, Оценка INTEGER)
CREATE TABLE Студент ( ID INTEGER, Фамилия_И_О CHARACTER VARYING(50), Домашний_адрес CHARACTER VARYING(100), Телефон CHARACTER VARYING(20), Номер_группы CHARACTER VARYING(10), Оценки TMarks ARRAY[], PRIMARY KEY (ID) )
CREATE TYPE TDiscip AS (Дисциплина INTEGER, Семестр INTEGER)
CREATE TABLE Преподаватель ( ID INTEGER, Фамилия_И_О CHARACTER VARYING(50), Домашний_адрес CHARACTER VARYING(100), Телефон CHARACTER VARYING(20), Кафедра INTEGER, Должность CHARACTER VARYING(20), ДП TDiscip ARRAY[], PRIMARY KEY (ID) )
CREATE TYPE TPrep AS (Преподаватель INTEGER, Семестр INTEGER)
CREATE TABLE Дисциплина ( ID INTEGER, Наименование CHARACTER VARYING(50), Ведет TPrep ARRAY[], PRIMARY KEY (ID) ) Множественные атрибуты хранятся в массивах переменной длины со сложным типом данных. Запрос для вывода только средствами SQL будет слишком сложным, и поэтому здесь не приводится. Для эффективного выполнения такого запроса необходимо воспользоваться расширенными возможностями PostgreSQL (написать специальную функцию на высокоуровневом языке программирования). В Postgres реализован механизм наследования структуры таблиц. При этом наследуются все атрибуты таблицы и добавляются новые атрибуты. Например, таблицы преподавателей и студентов можно объявить следующим образом: CREATE TABLE Персона ( ID INTEGER, Фамилия_И_О CHARACTER VARYING(50), Домашний_адрес CHARACTER VARYING(100), Телефон CHARACTER VARYING(20), PRIMARY KEY (ID) )
CREATE TABLE Преподаватель ( Кафедра INTEGER, Должность CHARACTER VARYING(20), ДП TDiscip ARRAY[] ) Персона
CREATE TABLE Студент ( Номер_группы CHARACTER VARYING(10), Оценки TMarks ARRAY[] ) Персона Это позволяет повысить выразительные способности SQL при описании структур данных, а также снизить затраты на их описание. Cache ’ Cache’ довольно условно можно отнести к постреляционным СУБД. В чистом виде в ней не реализована НФ2. «Постреляционность» Cache’ обусловлена возможностью связывания реляционной модели данных с объектно-ориентированной моделью штатными средствами СУБД. С одной стороны это не прямой способ реализации НФ2. Но с другой – предоставляет разработчикам более широкие возможности, присущие объектно-ориентированному подходу. Поэтому, Cache’ относят как к классу постреляционных, так и к классу объектно-ориентированных СУБД. 14.1.4. Достоинства и недостатки постреляционной модели данных (слайд 6) Основным достоинством постреляционной модели данных является адекватность предметной области (в большей степени, чем у реляционной модели). Это расширяет ее выразительные способности, в перспективе позволяет снизить трудоемкость проектирования и перепроектирования баз данных. Однако за такую адекватность и выразительные способности приходится расплачиваться вычислительными ресурсами (объемом дисковой и оперативной памяти, производительностью процессоров и т.п.). Следует также отметить, что в настоящее время отсутствуют стандарты и средства автоматизации проектирования постреляционных баз данных. Создать наглядное графическое представление (диаграмму) постреляционной модели на концептуальном (инфологическом) уровне можно средствами, например, ER-диаграмм и соответствующих CASE-средств (например, ERWin Data Modeler). Так же наглядно изобразить ту же модель, но на уровне физическом (реализации) на сегодняшний день не так просто.
|
||||
Последнее изменение этой страницы: 2021-12-07; просмотров: 104; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.137.175.166 (0.006 с.) |