Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Грищенко (Автосохраненный).docx
Скачиваний:
30
Добавлен:
12.06.2015
Размер:
50.05 Кб
Скачать

Поколения СУБД

Принято выделять три поколения СУБД:

  1. Первое поколение 70е годы.

2) В 80е годы появились реляционные СУБД.

  1. Третье поколение.

СУБД третьего поколения – это прямые наследники реляционных систем.

Терминология СУБД

БД – это именованная совокупность данных, отражающая состояние объектов и их отношений в рассматриваемой предметной области.

Предметная область – это часть реального мира подлежащая автоматизации с целью организации управления.

Банк данных – это система специальном образом организованных данных:

  • Баз данных

  • Программных

  • Технических

  • Языковых

  • Организованно – методических средств, предназначенных для обеспечения централизованного накопления и коллективного многоцелевого использования данных.

Основные функции СУБД

  1. Определение данных

  • Определение того, какая именно информация будет храниться в БД.

  • Определение свойств данных.

  • Указание типов хранимой информации.

  • Указание связей между данными.

  1. Обработка данных.

Данные могут обрабатываться различными способами

  1. Управление данными.

Определение функций каждому пользователю.

Общее для любой БД:

  1. Полнота

  2. Правильная организация.

  3. Актуальность

  4. Удобство для пользователя.

Архитектура СУБД состоит из компонентов:

  1. Язык описания данных

  2. Язык манипулирования данными

Компоненты БД

  1. Информационная база

  • Концептуальный. Представляет собой обобщающий взгляд на данные с позиции разработчика приложения, пользователя.

2) Лингвистические средства

3) Программные средства.

Обработка данных, управление этой обработкой, взаимодействие с операционной системой включает в себя:

  • Ядро – обеспечивает управление данными во внешней памяти и оперативной памяти.

  • Процессор языка БД – обеспечивает трансляцию и компиляцию, а так же оптимизацию запросов на выборку и изменение данных.

  • Подсистему поддержки программных вызовов

4.) Технические средства. БД создаются и формируют на основе вычислительных машин

5.) Организационно административные. Нормативно методическое обеспечение инструкции и др.

Модели данных

Модель данных – это совокупность структур данных, взаимосвязей и операций их обработки.

По способу установления связей между данными различают следующие модели данных:

  1. Иерархическая модель. Она предполагает наличие связей между данными, имеющими какой либо общий признак.

Преимущества: запрос возможен, если связь отображена в дереве.

Недостаток: другие запросы выполнить невозможно.

  1. Сетевая модель.

В ней связи разрешено устанавливать произвольным образом, без всяких ограничений.

Базовые понятия реляционных баз данных.

Атрибут – столбец таблицы.

Ключ – набор атрибутов, значение которых однозначно идентифицирует кортежи.

20.01.2015

  1. Логический. Логическая модель данных может быть построена на основе другой логической модели, например на основе модели процессов.

Логический уровень – это абстрактный взгляд на данные

  1. Физический. Физическая модель данных зависит от конкретной СУБД.

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

  1. Режим сущности – служит для размещения прямоугольников сущностей на диаграмме.

  2. Режим определения сущности – служит для презентации диаграммы другим людям

  3. Режим атрибуты – в этом режиме прямоугольник сущность делится линией на две части:

  1. В верхней части первичный ключ

  2. В нижнейостальные атрибуты

  1. Режим первичные ключи.

  2. Режим пиктограммы.

  3. 6) Режим показ глагольной фазы

При выборе логического или физического уровня создание модели мы модем использовать окно ErwinToolbox, которое предоставляет возможности работы по созданию диаграммы. Окно состоит из кнопок верхнего и нижнего ряда.

Палитра инструментов (верхний ряд):

  1. Кнопка указателя (режим мыши)

В этом режиме можно установить фокус на каком-либо объекте модели

  1. Кнопка внесения сущности.

  1. Щёлкнуть левой кнопкой мыши по кнопке внесения сущности

  2. Один раз по свободному пространству на модели

Для редактирования сущностей или других объектов модели необходимо прейти в режим указателя.

  1. Категория.

Категория, или категориальная связь, - специальный тип связи между сущносятми.

  1. Кнопка внесения текстового блока.

С ее помощью можно внести текстовый комментарий в любую часть графической модели.

Нижний ряд:

  1. Кнопка перенесения атрибутов внутри сущностей и между ними.

  2. Кнопки создания связей:

  1. Идентифицирующая

  2. Многие ко многим

  3. Не идентифицирующая

Физический уровень:

  1. Вместо кнопки категорий внести кнопку представлений (третья кнопка верхнего ряда)

  2. Вместо кнопки связи «многие ко многим», внесли кнопку связей представлений

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

При работе с сущностями можно произвести установку цвета и шрифта. Способы:

  1. Панель инструментов

  2. Правая кнопка мыши по сущности

21.01.15

По умолчанию имя связи на диаграмме не показывается.

Для отображения:

  1. Щелкнуть левой кнопкой мыши по свободному месту диаграммы, не занятому объектами модели.

  2. Вызов контекстного меню.

  3. Выбрать пункт Display Options/Relationship

  4. Включить опцию Verb Phrase

Для создания категориальной связи:

  1. Установить курсор на кнопке категория

  2. Щелкнуть по родовому предку, а затем по потомку.

  3. Для установления второй связи в иерархии категории следует сначала щелкнуть по символу категории, затем по второму потоку.

Инфологическая модель должна быть отображена в компьютеро-ориентированную даталогическую модель, «понятную» СУБД.

Задачей логического проектирования является организация данных в выборной СУБД, используя ее типы данных.

Физическое проектирование БД – это выбор эффективного размещения БД на внешних носителях для обеспечения наиболее эффективной работы приложения.

Задача физического этапа проектирования является:

  • Выбор рациональной структуры хранения данных

  • Определение методов доступа к ним

22.01.15

Нормализация таблиц

Важность нормализации состоит в том, что она позволяет разбить большие таблицы на более мелкие логические единицы.

Преимущества:

  • Данные легко обновлять или удалять

  • Уменьшается возможность введения некорректных данных

Процесс нормализации заключается в приведении таблиц в так называемые нормальные формы

Виды нормальных форм:

  • Первая нормальная форма (1НФ),

  • Вторая нормальная форма (2НФ),

  • Третья нормальная форма (3НФ),

  • Нормальная форма Бойсе-Кодда (НФБК)

Первая нормальная форма:

Устранение повторяющихся групп. В первой нормальной форме устраняются атрибуты, содержащие множественные значения.

Таблица находится в первой нормальной форме тогда и только тогда, когда в любом доступном значении этой таблицы каждая ее строка содержит только одно значение для каждого атрибута.

Вторая нормальная форма:

Удаление частично зависимых атрибутов.

Таблица находится во второй нормальной форме, если она удовлетворяет определению 1НФ и все ее атрибуты, не входящие в первичный ключ, связаны полной функциональной зависимостью с первичным ключом.

Другими словами, значение каждого поля должно полностью определяться значением первичного ключа.

Третья нормальна форма:

Удаление транзитивно зависимых атрибутов. В третьей нормальной форме устраняются атрибуты, зависящие от атрибутов, не входящих в уникальный идентификатор. Эти атрибуты являются основой отдельной сущности.

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

Таблицы – основа БД

БД состоит из таблиц, в которых хранятся данные.

Данные – это та информация, которую внес пользователь и которая хранится в таблицах.

Файл данных представляет собой таблицу, каждая строка которой(запись) содержит некоторые сведения об описываемом объекте.

Каждый столбец таблицы называется полем и содержит одну характеристику объекта.

Каждое поле имеет:

  • Имя

  • Тип

  • Размер

Таблицы бывают свободными и входящими

Индексы

Индексы – это заранее выбранные и распределенные в указанном порядке ссылки на записи таблицы.

Индексы используют для:

  • Сортировки

  • Организация связей между таблицами

  • Ускорения доступа к данным

Значения индексов хранятся в индексном файле.

Ссылочная целостность данных.

Это механизм так называемых внешних ключей. Смысл этого механизма состоит в том, что некоему атрибуту одного отношения, назначается ссылка на первичный ключ другого отношения.

Уникальное условное обозначение, присвоенное конкретному, называется кодом.

Код может состоять из одного знака или системы знаков, образованной по определенным правилам.

В качестве знаков могут выступать:

  • Цифры

  • Буквы

  • Буквенно-цифровые символы

Код характерезуется:

  • Длиной (числом позиций в коде)

  • Структурой (порядком расположения символов в коде)

  • Емкостью

Совокупность правил, по которым строится кодовое обозначение объекта, называется системой кодирования.

При кодировании элементов экономических объектов, используется:

  1. Порядковые

  2. Серийная

  3. Позиционная

  4. Система повторения

  5. Комбинированная система кодирования

Различают два класса систем кодирования:

  1. Классификационный

  2. Регистрационный\

02.02.15

Выдать отдел, фамилию, зарплату всех работников.

Select Fam, Im, Ot, Zar, Otdel

From Pers

Order by Otdel, Fam

Фамилии которые родились с 19 мая 1984 года по 17 июня 1994 года

Выдать фамилию того сотрудника, где третьей буквой является буква А.

Select Fam, Im, Ot

From Pers

WhereFamLike‘__a%’

Выдать фамилию и зарплату тех, кто работает в цехе и имеет должность слесарь.

Выдать ФИО всех сотрудников в результирующей таблице шапка должна.

04.02.15

По каждому отделу выдать количество должностей.

Select otdel, dol, Count (dol)

As коли4ество

From Pers

Group by otdel, dol

Выдать отделы, в которых работают мужчины.

Select distinct otdel

From Pers

Where sex = ‘м’

Select otdel

From pers

Where zar > ‘5000’

Определить в каких отделах средняя зарплата меньше 8000

Select otdel, avg (zar)

From pers

Group by otdel

Having avg (zar) < 8000

Выдать количество работников по должностям.

Select dol, count (dol)

From pers

Groupbydol

Выдать ФИО сотрудника, причем результирующая таблица должна содержать один столбец.

10.02.15

Подсчитать число строк в таблице

Selectcount(*)

FromPers

Увеличить зарплату всем сотрудникам для тех, кто родился весной.

Update Pers

Set Zar=Zar+1000

Where

extract (month from Dara_r) ‘3’ or ‘4’ or ‘5’

Увеличить зарплату всем тем сотрудникам, кто получает минимальную зарплату.

Update Pers

Set Zar=zar+5000

Where zar=(select min(zar)

Frompers)

Решает проблемы коллеткивного доступа к базам данных локальной сети.

Система разбивается на две части, которые могут выполнятся в разных узлах сети:

  1. Клиентскую

  2. Серверную часть

В этой системе выделяют:

  1. Активную сторону (источник запросов, клиент)

  2. Пассивную сторону

Взаимодействие клиента и сервера в сети осуществляется в соответствии с определенным страндартом или протоколом.

Протокол – это совокупность соглашений об установлении или прекращении связи и обмене информации.

Компьютер, управляющий тем или иным ресурсомя. Является сервером этого ресурса, а компьютер пользующийся им – клиентом.

Программа, выполняющая предоставление соответствующего набора услуг, рассматривается в качестве сервера.

Программы, пользующиеся этими услугами, принято называть клиентами.

Программы имеют распределенный хара ктер, т.е. одна часть функции прикладной программы реализуется в программе – клиенте, а другая в программе сервере и для их взаимодействия определяется некоторый протокол.

Функции:

  1. Первая группа – это функции ввода и отображение данных.

  2. Вторая группа – объединяет чисто прикладные функции, характерны

  3. Третья – фундаментальные функции хранения и управления информационно-вычислительными ресурсами.

  4. Четвертая – это служебные функции, осуществляющие связь между функциями первых трех групп.

В соответствии с этими функциями в любом приложении выделяют компоненты:

  1. Компонент представления – реализует функции первой группы

  2. Прикладной компонент – поддеррживает функции

  1. Файловый сервер (File server – FS)

  2. Доступ к удаленным данным

  3. Сервер баз данных

  4. Сервер приложений

12.02.15

Удалить всех тех сотрудников, которые поступили на работу в 2005.

Delete from Pers

Where extract (eyar from data_post)

= 2005

Библиотеки DLL– это хранилище программных кодов.

DLL реализуется в виде:

  1. Исполняемых модулей – исполняемый модуль содержит готовые к работе процедуры и функции.

  2. Ресурсов (Например, формы)

Сходство и различие DLL, с обычными паскаль модулями:

Сходство: Библиотеки и модули поставяют подпрограммы, избавляюшие программиста от повторного написания.

Различия: а) DLLне в состоянии поставлять в программу переменные, константы и их типы

Б) DLLне могут экспортировать программу класса.

С) Важное отличие заключается в способе связывания экспортируемых полпрограмм с основной программой.

Модули связываются с программой на этапе компановки. Таким образом, если загружены две программы, использующие одни и те же модули, то в памяти будет два экземпляра одинаковых фрагментов кода.

А DLLбиблиотеки подключаются к программе в момент ее исполнения т.е. динамически.

Таким образом в памяти будел лишь один экземпляр программного кода.

Д) изменение DLLне требует перекомпиляции использующей ее программы.

16.02.15

Динамический обмен данными. С помощью этой технологии программа-сервер может обмениваться информацией с программами-клиентами.

Компоненты этой технологии:

  1. TDdeClientConv

Устанавливает связь с сервером DDE

  1. TDdeClientitem

Конкретный объект, соержимое которого передается за один сеанс связи с сервером DDE.

  1. TServerConv

Сервер DDE

  1. TServeritem

Объект стороны сервера, содержимое которого предназначено для обмена.

Связывание

В случае связывания документ Wordувеличивается незначительно, но требуется контроль за наличием файла.

Внедрение

Объем документа увеличивается значительно, так как объект хранится внутри документа.

Объект, который встраивается в документ, называется контейнером.

В делфи, на панели систем, имеется контейнер, который позволяет нам встраивать объекты в программу или связывать их с ней.

Недостатки:

Сервер и клиент должны находится на одной машине.

Необходимо знать описание допустимых свойств и методов обработки объектов.

Технология COM.

Объектная модель компонента.

Comописывает модель объекта и способы взаимодействия таких объектов и программ.

Объект COMпредставляет собой законченный объект, со своими свойствами и методами, который может легко встраиваться в приложение.

Может распространятся как отдельный программный продукт.

Выдать тех, кто проживает в заводском районе.

Select Pers.fam, Pers.Im, Pers.Ot, spr.adres

From Pers, spr

Where (Pers.Num=spr.IS_nom) and

Trim(lower(adres))

19.02.15

SQLзапросы в приложении.

По технологии БДЕ.

SQLзапросы, создаваемые при разработке приложения, называются статическими.

Существует возможность формирования или изменение запроса, в ходе выполнение прилоения, такой запрос называется динамическим.

Динамический запрос формируется путем изменения свойств, компонента Query.

Для создания текста SQLзапроса исполльзуют специальный редактор, который вызывается для свойстваSQL.

Параметры, указаны в SQLзапросе, автоматически добавляются в список параметров, являющихся значением свойтваParamsкомпонентаQuery.

Технология MIDAS– это технологияBorlandдля создания многоуровневых приложений баз данных.

02.03.15

Сердце сервера приложений – это удаленный модуль данных.

Отличие от обычного модуля: удаленный модуль обеспечивает возможность тонким клиентам получать данные с сервера приложений.

Служебные элементы БД.

К служебным элементам относятся представления, хранимые процедуры, триггеры.

Представления: удобное средство просмотра, хранящийся в базе данных информации являются представления данных.

Представления имеют много общего с запросом.

Сходство:

  1. Связывать несколько таблиц

  2. Указывать отображаемые поля

  3. Задавать условие выборки

  4. Создание представления данных можно использовать как обычную таблицу в отчетах.

  5. С помощью представления можно ограничить доступ пользователя к отдельным записям.

  6. С помощью представления можно обновлять данные, сохраненные в нескольких связанных файлах.

Различия:

  1. Запросы хранятся в отдельных файлах, а представления данных в самой таблице.

Типы представлений:

  1. Подмножество полей таблицы состоит из одного или более полей таблицы

  2. Подмножество записей таблицы включает определенное количество записей таблицы.

  3. Соединение двух и более таблиц созается соединением нескольких таблиц.

  4. Агрегирование информации.

05.03.15

Кэш – это специальный буфер, предназначенный для хранения локальной копии.

Принцип кэширования изменений:

  1. В каталоге запуска программы создается локальная копия данных.

  2. Все изменения относятся не к реальным данным таблиц БД, а к хранящимся в буфере (кэше) их локальной копии

  3. Все изменения в кэше могут быть перенесены в реальную таблицу БД, либо кэш ликвидируется без запоминания изменений.

Набор данных может быть переведен в режим кэширования изменений, если свойству CachedUpDatesзадать значениеTrue(по умолчаниюFalse) для компонентовTable,Query,StoredPro.

Существует компонент, который специально предназначен для кэширования.

10.03.15

Обработка исключительной ситуации.

Генерация исключения состоит из двух этапов:

  1. Создания объекта исключения

  2. Возбуждения исключительной ситуации с этим объектом в качестве параметра.

Субъективное (неграмотные действия)

Объективное (возникает при проектировании)

Исключительная ситуация – это прерывание нормального хода работы программы из-за невозможности правильно выполнить последующие действия.

Класс исключений.

EOutOtMemory– свободная оперативная память исчерпана.

Raise EOutOtMemory.Create(‘Маловато памяти’)

Для распозвоания класса исключительной ситуации. Используют разбиение блока exceptна несколько частей с помощьюon…do.

On<идентификатор: класс исключения>do

<оператор1>

Else

<оператор2>

Где

Идентификатор – произвольное имя, заданное программистом.

Является необязательным элементом и может отсутствовать, при этом двоеточие не ставится.

Для освобождения ресурсов используют конструкцию.

Try// защищаемые операторы, которые используют ресурс.

Finally// освобождение ресурса

End;

Особенность состоит в том, что секция finally…endвыполняется всегда, независимо от того, происходит исключительная ситуация или нет.

Архитектуры удаленных баз данных

1. Основные понятия и определения.

Системы управления удаленными (распределенными) базами дан­ных — это СУБД (СУРБД), обеспечивающие возможность одно­временного доступа к информации различным пользователям.

Рассмотрим термины, применяемые в системах управления распределенными базами данных.

Архитектура БД — организация взаимодействия аппаратных средств.

Виды архитектуры БД: клиент—сервер, двухуровневая и трех­уровневая клиент-сервер, файл —сервер.

Архитектура ODBC (Open DataBase Connectivity) — откры­тый интерфейс доступа к базам данных, т. е. взаимодействие про­цессора (ядра) базы данных Jet с внешними источниками дан­ных.

Модели данных — схемы, характеризующие базы данных с раз­ных сторон с целью определить оптимальное построение инфор­мационной системы.

Ядро базы данных — внутренняя структура СУБД, обеспечива­ющая доступ ко всем компонентам базы данных. В новых версиях

СУБД Access называется Microsoft Data Engine (MSDE); в ранних версиях ядро базы данных называлось машина базы данных Microsoft Jet.Ядро базы данных обеспечивает поддержку символов различ­ных алфавитов, синтаксис языка SQL и другие средства обработ­ки различных типов данных.

Пользователь БД — программа или человек, обращающийся к базе данных.

Запрос — процесс обращения пользователя к БД с целью вве­сти, получить или изменить информацию.

Транзакция — последовательность операций модификации дан­ных в БД, переводящая ее из одного непротиворечивого состоя­ния в другое непротиворечивое состояние.

Логическая структура БД — определение БД на физически не­зависимом уровне, что ближе всего соответствует концептуаль­ной ее модели.

Топология БД, или структура распределенной БД, — схема рас­пределения физической организации базы данных в сети.

Локальная автономность — понятие, означающее, что инфор­мация локальной БД и связанные с ней определения данных при­надлежат локальному владельцу и им управляются.

Удаленный запрос — запрос к базам данных, находящихся на ресурсах локальной сети предприятия или сети Интернет.

Возможность реализации удаленной транзакции — обработка одной транзакции, состоящей из множества запросов, на одном удаленном узле.

Поддержка распределенной транзакции — обработка транзакции, состоящей из нескольких запросов, выполняемых на несколь­ких узлах сети (удаленных или локальных), но каждый из которых обрабатывается только на одном узле.

Распределенный запрос — запрос, при обработке которого ис­пользуются данные из БД, расположенные в разных узлах сети.

Системы распределенной обработки данных в основном связа­ны с первым поколением БД, которые строились на мультипрог­раммных операционных системах, хранились на устройствах внеш­ней памяти центральной ЭВМ и использовали терминальный многопользовательский режим доступа. При этом пользователь­ские терминалы не имели собственных ресурсов, т. е. процессоров и памяти, которые могли бы использоваться для хранения и об­работки данных. Первой полностью реляционной системой, рабо­тающей в многопользовательском режиме, была СУБД SYSTEM R фирмы IBM. Именно в ней были реализованы как язык манипу­лирования данными, так и основные принципы синхрони­зации, применяемые при распределенной обработке данных, ко­торые до сих пор являются базисными практически во всех ком­мерческих СУБД.