Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
шпора 2.docx
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
171.14 Кб
Скачать

Билет№5

1 Иерархическая и сетевая модель. ИМ яв-ся подтипом сетевой модели. Иер-кие БД исп-ют древовидную структуру для работы с данными. Доступ к данным нач-ся с поиска по общим категориям и идет по пути дальнейшей детализации категорий, пока не будет получена необ-ая инф-ия. Примерами типичных операторов манип-ния иер-ски орг-ными данными могут быть след-ие: - найти указанное дерево БД (напр., отдел с заданным номером); - перейти от одного дерева к другому; - перейти от одной записи к другой внутри дерева (напр., от отдела к 1му сотруднику); - перейти от одной записи к др. в порядке обхода иерархии; - вставить новую запись в указанную позицию; - удалить текущую запись. Важной особенностью иер-ой структуры яв-ся то, что в ней дочерние экземпляры не могут сущ-ть без наличия род-ских экземпляров. Для доступа к отдельным данным в иер-ой системе необходимо пройти послед-ный перебор элементов, начиная с корневого узла. Для изм-ия каких-либо данных необ-мо изм-ть всю ветвь или само дерево. Т.е. в иер-кой модели преобладает не универ-ость, а высокая степень зависимости от конкретных данных.Одним из преимуществ яв-ся то, что цел-сть на уровне ссылок обесп-тся автом-ки, потому что узлы полностью зависят от др. узлов.Недостатки иерархической модели данных 1. ИМ данных не дает адекватных ср-в для явного указания ограничений, накладываемых на данные. 2. Невозможность хранения узлов, которые не имеют родительских 3. Трудность модел-ния связей типа «многие - ко - многим». Включение связей такого типа приводит к необх-сти дублирования данных. На ИМ модели данных основано сравнительно ограниченное количество СУБД. В ИМ основная структура представления данных имеет форму дерева. На самом высшем (первом) уровне иерархии находится только одна вершина, которая наз-ся корнем дерева. Эта вершина имеет связи с вершинами 2ого уровня, вершины 2ого уровня имеют связи с вершинами 3его уровня и т.д. Связи между вершинами одного уровня отс-ют. След-но, данные в иер-кой структуре не равноправны – одни жестко подчинены другим. Доступ к инф-ии возможен только по верт схеме, начиная с корня, так как каждый элемент связан только с одним элементом на верхнем уровне и с одним или несколькими на низком. Основные понятия Сегмент, уровень, предок и потомок. Каждый предок может иметь несколько потомков; каждый потомок имеет только одного предка. Связь 1:М. Преимущества: Простота идеи. Структура ИМ, отношения между различными слоями интуитивно понятны. Безопасность БД обеспечивает СУБД. Поэтому безопасность едина для всей системы и не требует никаких усилий от програм-ов. Независимость данных. СУБД соз-т среду, которая может обеспечить незав-ость данных, сущ-но упрощая этим работу программ-ов. Целостность данных Взаимоотн-ие предок/потомок всегда предп-ет наличие связи между сегментом-предком и его дочерними сегментами Эффективность. ИМ базы данных очень эффективна, когда в БД содержится большой объем данных со связью 1:М и когда пользователи вып-ют большое число транзакций, используя объекты, связи между кот-ми фиксированы во времени. Недостатки: Сложность реализации. От СУБД все же требуется высокий профессионализм при организации физ-го хранения данных. Сложность управления. Любые изменения в структуре БД, напр., перемещение сегментов, вызовут необх-сть изменений во всех прикладных программах, получающих доступ к базе данных.Недостаток структурной независимости имеет место, если изменения в структуре базы данных не влияют на возможность доступа СУБД к данным. Сложность программ-ния и исп-ия приложений. В структуре навиг-ой базы данных прикладные программисты и конечные пользователи должны точно знать, каким образом физически данные размещены в БД для того, чтобы получить к ним доступ. Ограничение в реализации. Многие связи не могут быть изображены схемой 1:М, на которой основана иер-ая БД. Недостаток стандартизации. Все-таки не сущ-ет стандар-ого набора ключевых понятий и компонентов, на базе чего можно было создать модель, в которую было бы включено описание всех необходимых стандартов. ИМ явл-ся наиболее простой, поэтому истор-ки она появилась первой. К достоинствам ИМ данных относится: достаточно эф-ое исп-ние памяти и неплохие временные показатели выполнения операций над данными. В сетевой структуре любой элемент может быть связан с любым другим эл-ом и каждый из эл-ов может яв-ся входом в стр-ру. Данные в сетевой модели представлены в виде совок-тей записей, а связи - в виде наборов. Сетевая модель яв-ся обобщением ИМ. Сетевую структуру также можно описать с помощью исходных и порожденных элементов: каждый эл-т может иметь как несколько порожденных, так и нес-ко исходных эл-ов. В ней пор-ные эл-ы распол-ся ниже исходных. В простых сетевых стр-ах между парой эл-ов поддерживается отношение «один - ко - многим». Направление и характер связи между эл-ми не яв-ся очевидным, и поэтому направление связи должно быть указано. В сетевых БД все данные считаются потенциально взаимосвязанными. Типичные операции в сетевой модели:‒ найти следующую запись данного типа и сделать ее текущей;‒ извлечь запись в буфер прикладной программы для обработки;‒ заменить в записи значения указанных эл-ов данных;‒ запомнить запись из буфера в БД.Сетевая модель – это структура, у которой любой эл-т может быть связан с любым другим эл-ом. Над данными в сетевой базе могут вып-ся след-ие операции:Добавить – внести запись в базу данных. Извлечь – извлечь запись из базы данных.Обновить – изменить значение эл-ов предварительно извлеченной записи.Удалить – убрать запись из БД.Включить в групповое отношение – связать сущ-щую подчиненную запись с записью-владельцем.Исключить из группового отношения – разорвать связь между записью-владельцем и записью-членом. Переключить – связать сущ-щую подчиненную запись с другой записью-владельцем в том же групповом отношении. Преимущества Поддержка других типов связей. Связь M:N проще реализуется в сетевой модели, чем в иер-ой. Гибкий доступ к данным. Гибкость доступа к данным в СМ значительно выше, чем в ИМ и в системах файлов. Любое приложение может получить доступ к записи владельцу и всем записям-членам внутри множества. Обеспечение целостности базы данных. СМ спос-ет соблюдению целостности БД, поскольку пользователь должен, прежде всего, опр-ть запись-владельца, а уже потом записи-члены.Независимость данных. В СМ обеспечена достаточная нез-сть данных, которая, по крайней мере, частично избавляет от программирования сложных деталей, связанных с методами физ-го хранения инф-и. Соответствие стандартам. Возникновение СМ, по крайней мере, в некоторой части, связано со стандартами, разр-ми и принятыми в 70ых годах 20го века. Недостатки Сложность системы в целом. Обеспечение цел-ти и эф-ть, с которой сетевая БД управляет отношениями, иногда становятся причиной сложности всей системы.Недостаточная структурная независимость. Поскольку СМ базы данных также обесп-ет доступ к данным с помощью средств навигации, то в ней, как и в ИМ, трудно производить структурные изменения, а некоторые из них просто невозможны. Сравнивая иер-ие и сетевые БД, можно сказать следующее. В целом эти модели обесп-ют достаточно быстрый доступ к данным. Но поскольку в сетевых базах основная структура представления инф-и имеет форму сети, в которой каждая вершина (узел) может иметь связь с любой другой, то данные в сетевой базе более равноправны, чем в иер-ой, так как доступ к инф-и может быть осуществлен, начиная с любого узла.

2.Структура команды SQL. Типы данных. Выражения.

Команда SQL состоит из ключевых слов и слов, опр-ых польз-ем. Кл-ые слова яв-ся постоянной частью языка SQL и имеют фикс-ое значение. Их следует записывать в точности так, как это установлено, нельзя разбивать на части для переноса с одной строки на другую. Слова, определяемые польз-ем, задаются им самим и предс-ют собой идентификаторы или имена различных объектов БД. Слова в инструкции размешаются также в соответствии с устан-ми синтакс-ми правилами. Каждый запрос начинается с глагола, т.е. кл-го слова, описы-го выполняемое действие, и закан-тся точкой с запятой. Типичными глаголами являются SELECT (выбрать), CREATE (создать), INSERT (добавить), DELETE(удалить) и COMMIT (завершить).После глагола следует одно или несколько предложений. Они описывают данные, с которыми работает команда, или содержат уточняющую инф-ию о действии, выполняемом ею. Каждое предложение начинается с кл-го слова, напр. WHERE (где), FROM (откуда), INTO (куда) и HAVING.При дальнейшем описании глаголы, с которых нач-ся команды, и кл-е слова (слова, которые в SQL зарезервированы для спец-го исп-ия и яв-ся частью его синтаксиса) будем записывать прописными буквами, чтобы отличать их от имен полей и таблиц. Но в общем случае синтаксис SQL не чувствителен к расположению текста по строкам и к регистру символов. Типы данных, исп-мые в стандартном языке SQL, можно подразделить на следующие группы:- строковые типы;- числовые типы;- типы для представления даты и времени.

Строковые типы. Определены два строковых типа: Символьные строки фиксированной длины. Данные, хран-ся в виде символьных строк фикс-ой длины, всегда занимают один и тот же объем памяти, опр-мый при объявлении поля, независимо от реального размера строки, занесенной в поле. Объявление строки фиксированной длины, со-

гласно ANSI SQL-92, имеет вид CHARACTER (n).При использовании строк фиксированной длины пустые места обычно заполняются пробелами.

Символьные строки переменной длины. Длина строк переменной длины не является постоянной для всех данных, а зависит от реального размера строки, хранящейся в поле таблицы базы данных. Объявление строки переменной длины имеет вид VARCHAR (n).

Числовые типы подразделяются:Целочисленные типы. Стандартом ANSI SQL-92 устанавливаются два целочисленных типа: - INTEGER, целое число со знаком размером 4 байта, может представлять числа в диапазоне от -2147 483 648 до 2 147 483 647; - SMALLINT, короткое целое число со знаком размером 2 байта, может представлять целые числа в диапазоне от -32 768 до 32 767. Вещественные типы с фиксированной точкой. Вещественные типы с фиксированной точкой предназначены для точного представления дробных чисел. Наиболее часто эти типы используются в том случае, когда недопустимы погрешности, неизбежные при представлении вещественных чисел с плавающей точкой в двоичной форме.Синтаксис объявления типа с фиксированной точкой следующий:DECIMAL(n.m). Здесь n — точность, m — масштаб.Вещественные типы с плавающей точкой. Типы с плавающей точкой обычно используются в научных и инженерных расчетах. Наиболее часто используются два вещественных типа с плавающей точкой:- FLOAT, числа с одинарной точностью;- DOUBLE, числа с двойной точностью.

Двоичные строки. Двоичные строки используются сравнительно редко. Обычно поля такого типа применяются в качестве флагов или двоичных масок. Так же как и символьные строки, двоичные строки бывают фиксированной и переменной длины. Двоичные строки фиксированной длины объявляются следующим образом:BIT (n).Здесь n — длина строки в байтах. Объявление строк переменной длины выглядит так:BITVARYING (n).Здесь n — максимальная длина строки в байтах.

Типы для представления даты и времени

Очевидно, что типы для представления даты и времени используются для хранения сящейся к датам и времени. Иногда типы данных, предназначенные для хранения даты и времени, называются темпоральными. В стандарте SQL определены следующие типы данных для хранения информации о дате и времени:- DATE, хранение даты; - TIME, хранение времени;- TIMESTAMP, хранение даты и времени;- INTERVAL, хранение промежутка времени между двумя датами или между двумя моментами времени.

Все допустимые в SQL типы данных, которые можно использовать при определении столбцов, разбиваются на следующие категории:

- точные числовые типы (exact numerics);

- приближенные числовые типы (approximate numerics);

- типы символьных строк (character strings);

- типы битовых строк (bit strings);

- типы даты и времени (datetimes);

- типы временных интервалов (intervals);

- булевский тип (booleans);

- типы коллекций (collection types);

- анонимные строчные типы (anonymous row types);

- типы, определяемые пользователем (user-defined types);

- ссылочные типы (reference types).

Точные числовые типы.К категории точных числовых типов в SQL относятся те типы, значения которых точно представляют числа. Типы данных этой категории распадаются на две части: истинно целые типы (INTEGER и SMALLINT) и типы, допускающие наличие дробной части (NUMERIC и DECIMAL).

Приближенные числовые типы.К категории приближенных числовых типов в SQL относятся те типы, значения которых представляютчисла приближенным образом. Приближенные числа представляются в виде пары <мантисса, порядок>,где мантисса состоит из значащих цифр числа, а порядок определяет реальный размер числа.

Типы символьных строк

В SQL определены три типа символьных строк:

CHARACTER (ИЛИ CHAR),

CHARACTER VARYING (CHAR VARYING, VARCHAR),

CHARACTER LARGE OBJECT (CLOB).

Тип CHARACTER. Значениями типа являются символьные строки. Конкретный набор допустимых символов определяется в реализации, но, как правило, включает набор символов ASCII.

Тип CHARACTER VARYING. При определении столбца допускается использование спецификаций CHARACTER VARYING(X) и просто CHARACTER VARYING.

Тип CHARACTER LARGE OBJECT. Этот тип данных предназначен для определения столбцов, хранящих большие и разные по размеру группы символов. При определении столбца задается спецификация CLOB (z), где z задает максимальный размер соответствующей группы символов.