Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь 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; просмотров: 173; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.216.156 (0.006 с.) |