Теоретические азы БД (введение в SQL). Основы реляционной алгебры

Добавить - внести запись в БД и, в зависимости от режима включения, либо включить ее в групповое отношение, где она объявлена подчиненной, либо не включать ни в какое групповое отношение.
Включить в групповое отношение - связать существующую подчиненную запись с записью-владельцем.
Переключить - связать существующую подчиненную запись с другой записью-владельцем в том же групповом отношении.
Обновить - изменить значение элементов предварительно извлеченной записи.
Извлечь - извлечь записи последовательно по значению ключа, а также используя групповые отношения - от владельца можно перейти к записям - членам, а от подчиненной записи к владельцу набора.
Удалить - убрать из БД запись. Если эта запись является владельцем группового отношения, то анализируется класс членства подчиненных записей. Обязательные члены должны быть предварительно исключены из группового отношения, фиксированные удалены вместе с владельцем, необязательные останутся в БД.
Исключить из группового отношения - разорвать связь между записью-владельцем и записью-членом.

Реляционная модель базы данных

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

Второй элемент модели - реляционно-полный язык. Полнота языка в приложении к реляционной модели означает, что он должен выполнять любую операцию реляционной алгебры . Более того, язык должен описывать любой запрос в виде операций с таблицами, а не с их строками. Одним из таких языков является SQL .

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

Объектно-ориентированная модель.

В объектно-ориентированных базах данных, в отличие от реляционных, хранятся не записи, а объекты (текст, аудио- и видеоинформация, документы и другие объекты). Также важна задача сохранения состояния объектов между повторными запусками прикладной программы. Однако, развитого математического аппарата, на который могла бы опираться общая объектно-ориентированная модель данных , не существует.

Большинство ООСУБД представляют собой библиотеку, процедуры управления данными которой включаются в прикладную программу. Несмотря на преимущества объектно-ориентированных систем - реализация сложных типов данных , связь с языками программирования и т.п. - на ближайшее время превосходство реляционных СУБД гарантировано.

Объектно-реляционные СУБД

Разница между объектно-реляционными и объектными СУБД : первые являют собой надстройку над реляционной схемой, вторые же изначально объектно-ориентированы. Главная особенность и отличие объектно-реляционных (как и объектных) СУБД от реляционных заключается в том, что ОРСУБД интегрированы с Объектно-Ориентированным (OO) языком программирования, внутренним или внешним как C++, Java .

Объектно-реляционными СУБД являются, например, широко известные Oracle Database , Microsoft SQL Server , PostgreSQL, Microsoft Access.

Реляционный подход к построению модели предметной области.

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

· между таблицами существуют связи;

· каждый элемент таблицы - один элемент данных;

· все столбцы в таблице однородные, т.е. все элементы в столбце имеют одинаковый тип (числовой, символьный и т.д.) и длину;

· каждый столбец описывает один атрибут сущности;

· каждый столбец имеет уникальное имя;

· строка содержит значения атрибутов для одного экземпляра сущности;

· одинаковые строки в таблице отсутствуют (наличие первичного ключа);

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

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

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

Отношение (таблица) называется нормализованным или приведенным к первой нормальной форме , если все его атрибуты простые (далее неделимы).

Преобразование отношения к первой нормальной форме может привести к увеличению количества реквизитов (полей) отношения и изменению ключа.

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

· таблица должна содержать данные об одном типе объектов;

· каждая таблица должна содержать одно поле или несколько полей, образующих уникальный идентификатор (или первичный ключ) для каждой строки;

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

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

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

Типы связей. Свойства отношений

· Отношение "один-к-одному" (1:1) означает, что каждая запись в одной таблице соответствует не более чем одной записи в другой таблице.

· Отношение "один-ко-многим" (1:М) означает, что каждой записи в одной таблице соответствует 0 или 1 или несколько записей в другой таблице.

· Отношение "многие-к-одному" (М:1) аналогично рассмотренному ранее типу "один-ко-многим". Тип отношения между объектами зависит от точки зрения.

· Отношение "многие-ко-многим" (М:М). возникает между двумя таблицами тогда, когда каждой записи в одной таблице соответствует 0 или более записей в другой таблице и наоборот.

Простые и составные ключи

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

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

Такой первичный ключ называют составным ключом

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

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

Связь "многие-ко-многим " реализуется через дополнительную таблицу, с помощью которой эта связь будет сведена к двум связям типа "один-ко-многим ".

^

Лекция № 4. Реляционная алгебра. Унарные операции

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

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

^

1. Унарная операция выборки

Первой унарной операцией, которую мы рассмотрим, является операция выборки – операция выбора строк из таблицы, представляющей отношение, по какому

либо принципу, т. е. выбор строк

кортежей, удовлетворяющих определенному условию или условиям.

^ Оператор выборки обозначается σ <P >, условие выборки P <S >, т. е., оператор σ берется всегда определенным условием на кортежи P , а само условие P записывается зависящим от схемы отношения S . С учетом всего этого сама операция выборки над схемой отношения S применительно к отношению r

σ <P >r (S ) σ <P >r = {t (S ) |t r & P <S >t } = {t (S ) |t r & IfNull (P <S >t , False };

Результатом этой операции будет новое отношение с той же схемой отношения S , состоящее из тех кортежей t (S ) исходного отношения

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

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

Чтобы лучше понять принцип работы этой операции, приведем пример. Пусть дана следующая схема отношения:

^ S : Сессия (№ зачетной книжки, Фамилия, Предмет, Оценка).

Условие выборки возьмем такое:

P <S > = (Предмет = ‘Информатика’ and Оценка > 3).

Нам необходимо из исходного отношения

операнда выделить те кортежи, в которых содержится информация о студентах, сдавших предмет «Информатика» не ниже, чем на три балла.

Пусть также дан следующий кортеж из этого отношения:

t 0 (S ) ∈ r (S

Применяем наше условие выборки к кортежу t 0 , получаем:

Pt 0 = (‘Базы данных’ = ‘Информатика’ and 5 > 3);

На данном конкретном кортеже условие выборки не выполняется.

А вообще результатом этой конкретной выборки

σ <Предмет = "Информатика" and Оценка > 3 > Сессия

будет таблица «Сессия», в которой оставлены строки, удовлетворяющие условию выборки.

^

2. Унарная операция проекции

Еще одна стандартная унарная операция, которую мы изучим, – это операция проекции. Операция проекции – это операция выбора столбцов из таблицы, представляющей отношение, по какому

либо признаку. А именно машина выбирает те атрибуты (т. е. буквально те столбцы) исходного отношения

операнда, которые были указаны в проекции.

^ Оператор проекции обозначается [S" ] или π . Здесь S" – подсхема исходной схемы отношения S , т. е. ее некоторые столбцы. Что это означает? Это означает, что у S’ атрибутов меньше, чем у S , потому что в S" остались только те из них, для которых выполнилось условие проекции. А в таблице, представляющей отношение r (S" ), строк столько же, сколько их у таблицы r (S ), а столбцов – меньше, так как остались только соответствующие оставшимся атрибутам. Таким образом, оператор проекции π< S"> применительно к отношению r (S ) дает в результате новое отношение с другой схемой отношения r (S" ), состоящее из проекций t (S ) [S" ] кортежей исходного отношения. Как определяются эти проекции кортежей? Проекция любого кортежа t (S ) исходного отношения r (S ) на подсхему S" определяется следующей формулой:

t (S ) [S’ ] = {t (a )|a def (t ) ∩ S ’}, S " ⊆S .

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

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

π <S" >r (S ) ≡ π <S’ >r r (S ) [S ’] ≡ r [S" ] = {t (S ) [S’ ] | t r };

Рассмотрим пример, иллюстрирующий принцип работы операции выборки.

Пусть дано отношение «Сессия» и схема этого отношения:

S : Сессия (№ зачетной книжки, Фамилия, Предмет, Оценка);

Нас будут интересовать только два атрибута из этой схемы, а именно «№ зачетной книжки» и «Фамилия» студента, поэтому подсхема S" будет выглядеть следующим образом:

^ S" : (№ зачетной книжки, Фамилия).

Нужно исходное отношение r (S ) спроецировать на подсхему S" .

t 0 (S ) ∈ r (S ): {(№ зачетной книжки: 100), (Фамилия: ‘Иванов’), (Предмет: ‘Базы данных’), (Оценка: 5)};

Значит, проекция этого кортежа на данную подсхему ^ S" будет выглядеть следующим образом:

t 0 (S ) S" : {(№ зачетной книжки: 100), (Фамилия: ‘Иванов’)};

Если говорить об операции проекции в терминах таблиц, то проекция Сессия [№ зачетной книжки, Фамилия] исходного отношения – это таблица Сессия, из которой вычеркнуты все столбцы, кроме двух: № зачетной книжки и Фамилия. Кроме того, все дублирующиеся строки также удалены.

^

3. Унарная операция переименования

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

^ Оператор переименования выглядит следующим образом: ρ<φ >, здесь φ – функция переименования .

Эта функция устанавливает взаимно

однозначное соответствие между именами атрибутов схем S и Ŝ, где соответственно S – схема исходного отношения, а Ŝ схема отношения с переименованными атрибутами. Таким образом, оператор ρ <φ> в применении к отношению r (S ) дает новое отношение со схемой Ŝ , состоящее из кортежей исходного отношения только с переименованными атрибутами.

Запишем операцию переименования атрибутов в терминах систем управления базами данных:

ρ <φ > r (S ) ≡ ρ <φ >r = {ρ <φ > t (S )| t r };

Приведем пример использования этой операции:

Рассмотрим уже знакомое нам отношение Сессия, со схемой:

S: Сессия (№ зачетной книжки, Фамилия, Предмет, Оценка);

Введем новую схему отношения Ŝ, с другими именами атрибутов, которые мы бы хотели видеть вместо имеющихся:

Ŝ : (№ ЗК, Фамилия, Предмет, Балл);

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

φ : (№ зачетной книжки, Фамилия, Предмет, Оценка) → (№ ЗК, Фамилия, Предмет, Балл);

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

φ : (№ зачетной книжки, Оценка) (№ ЗК, Балл);

t 0 (S ) r (S ): {(№ зачетной книжки: 100), (Фамилия: ‘Иванов’), (Предмет: ‘Базы данных’), (Оценка: 5)};

Применим оператор переименования к этому кортежу:

ρ<φ> t 0 (S ): {(№ ЗК: 100), (Фамилия: ‘Иванов’), (Предмет: ‘Базы данных’), (Балл: 5)};

Итак, это один из кортежей нашего отношения, у которого переименовали атрибуты.

В табличных терминах отношение

ρ < № зачетной книжки, Оценка «№ ЗК, Балл > Сессия –

это новая таблица, полученная из таблицы отношения «Сессия», переименованием указанных атрибутов.

^

4. Свойства унарных операций

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

Первым свойством унарных операций выборки, проекции и переименования является свойство, характеризующее соотношение мощностей отношений. (Напомним, что мощность – это количество кортежей в том или ином отношении.) Понятно, что здесь рассматривается соответственно отношение исходное и отношение, полученное в результате применения той или иной операции.

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

1) соотношение мощностей:

а) для операции выборки: | σ <P >r |≤ |r |;

б) для операции проекции: | r [S" ] | ≤ |r |;

в) для операции переименования: | ρ <φ >r | = |r |;

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

В случае же операции переименования, мощность отношения не изменяется, за счет того, что при смене имен никакие кортежи из отношения не исключаются;

2) свойство идемпотентности:

а) для операции выборки: σ <P > σ <P >r = σ <P >;

б) для операции проекции: r [S’ ] [S’ ] = r [S" ];

в) для операции переименования в общем случае свойство идемпотентности неприменимо.

Это свойство означает, что двойное последовательное применение одного и того же оператора к какому

либо отношению равносильно его однократному применению.

Для операции переименования атрибутов отношения, вообще говоря, это свойство может быть применено, но обязательно со специальными оговорками и условиями.

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

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

3) свойство монотонности:

а) для операции выборки: r 1 r 2 ⇒ σ <P > r 1 σ <P >r 2 ;

б) для операции проекции: r 1 r 2 r 1 [S" ] r 2 [S" ];

в) для операции переименования: r 1 r 2 ρ <φ >r 1 ⊆ ρ <φ >r 2 ;

Понятие монотонности в реляционной алгебре аналогично этому же понятию из алгебры обычной, общей. Поясним: если изначально отношения r 1 и r 2 были связаны между собой таким образом, что r r 2 , то и после применения любого их трех операторов выборки, проекции или переименования это соотношение сохранится.

Реляционная алгебра - это язык операций, выполняемых над отношениями - таблицами реляционной базы данных. Операции реляционной алгебры позволяют на основе одного или нескольких отношений создавать другое отношение без изменения самих исходных отношений. Полученное другое отношение обычно не записывается в базу данных, а существует в результате выполнения SQL-запроса - массиве, создаваемом функциями для работы с базами данных в языках программирования. Для каждой операции реляционной алгебры будет дана её реализация в виде запросов на языке SQL.

Рассмотрим операции реляционной алгебры. Чтобы Вам не отвлекаться на содержание таблиц не Ваших баз данных, таких как "Продукты", "Водители", "сливы", "груши", "чай", "кофе", Владимиры, Сергеи и т.п. будем выполнять операции над отношениями (таблицами) с абстрактными данными, такими как R1, R2 (названия таблиц - отношений) и т.д. и А1, А2, А3 (названия атрибутов - столбцов) и h15, w11 и т.п. (содержание записей таблиц базы данных).

Приоритеты выполнения операций реляционной алгебры (в порядке убывания пунктов списка, а в одном пункте - операции с равными приоритетами):

  • селекция, проекция
  • декартово произведение, соединение, пересечение, деление
  • объединение, разность.

Операция выборки

Операция выборки работает с одним отношением и определяет результирующее отношение R , которое содержит только те кортежи (или строки, или записи), отношения , которые удовлетворяют заданному условию (предикату P ).

Таким образом, операция выборки - унарная операция - и записывается следующим образом:

где P - предикат (логическое условие).

Запрос SQL

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

R3
A1 A2 A3 A4
3 hh yl ms
4 pp a1 sr
1 rr yl ms

Просматриваем столбец А3 и устанавливаем, что предикату A3>"d0" удовлетворяют записи в первой и третьей строках исходного отношения (так как номер буквы y в алфавите больше номера буквы d). В результате получаем следующее новое отношение, в котором две строки:

R
A1 A2 A3 A4
3 hh yl ms
1 rr yl ms

Комбинировать всевозможные логические условия для выборок Вам поможет материал "Булева алгебра (алгебра логики)" .

Запрос SQL

SELECT A1, A2, A3 from R1 UNION SELECT A1, A2, A3 from R2

Теперь посмотрим, что получится в результате выполнения этой операции реляционной алгебры и соответствующего ей запроса SQL. Теперь даны два отношения, так как операция объединения - бинарная операция:

R1 R2
A1 A2 A3 A1 A2 A3
Z7 aa w11 X8 pp k21
B7 hh h15 Q2 ee h15
X8 pp w11 X8 pp w11

Объединяем строки первого и второго отношения и видим, что третья строка, которая является третьей и в первом, и во втором отношении - идентичны, поэтому её включаем в новое отношение только один раз. Получаем следующее отношение:

R
A1 A2 A3
Z7 aa w11
B7 hh h15
X8 pp w11
X8 pp k21
Q2 ee h15

Важно следующее: операция объединения может быть выполнена только тогда, когда два отношения обладают одинаковым числом и названиями атрибутов (столбцов), или, говоря формально, совместимы по объединению.

Операция пересечения

Результатом пересечения двух множеств (отношений) А и В () будет такое множество (отношение) С, которое включает в себя те и только те элементы, которые есть и во множестве А, и во множестве В. Операция пересечения реляционной алгебры идентична операции .

Запрос SQL

SELECT A1, A2, A3 from R1 INTERSECT SELECT A1, A2, A3 from R2

В некоторых диалектах SQL отсутствует ключевое слово INTERSECT. Его заменой, например, в MySQL и других, является INNER JOIN. О том, как работает оператор SQL JOIN вообще и его разновидности INNER JOIN, LEFT OUTER JOIN, RIGHT OUTER JOIN и FULL OUTER JOIN - на уроке SQL JOIN - соединение таблиц базы данных .

Запрос MySQL

Теперь посмотрим, что получится в результате выполнения этой операции реляционной алгебры и соответствующего ей запроса SQL. Вновь даны два отношения R1 и R2:

R1 R2
A1 A2 A3 A1 A2 A3
Z7 aa w11 X8 pp k21
B7 hh h15 Q2 ee h15
X8 pp w11 X8 pp w11

Просматриваем все записи в двух отношениях, и обнаруживаем, что и в первом, и во втором отношении есть одна строка - та, которая является третьей и в первом, и во втором отношении. Получаем новое отношение:

R
A1 A2 A3
X8 pp w11

Операция разности

Разность двух отношений R1 и R2 () состоит из кортежей (или записей, или строк), которые имеются в отношении R1, но отсутствуют в отношении R2. Отношения R1 и R2 должны быть совместимы по объединению. Операция разности реляционной алгебры идентична операции .

Запрос SQL

SELECT A1, A2, A3 from R2 EXCEPT
SELECT A1, A2, A3 from R1

Установим, что получится в результате выполнения этой операции реляционной алгебры и соответствующего ей запроса SQL. Вновь даны два отношения R1 и R2:

R1 R2
A1 A2 A3 A1 A2 A3
Z7 aa w11 X8 pp k21
B7 hh h15 Q2 ee h15
X8 pp w11 X8 pp w11

Из отношения R2 исключаем строку, которая есть также в отношении R2 - третью - и получаем новое отношение:

R
A1 A2 A3
X8 pp w11
Q2 ee h15

Операция декартова произведения

Операция декартова произведения () определяет новое отношение R, которое является результатом конкатенации каждого кортежа отношения R1 с каждым кортежем отношения R2.

Запрос SQL

SELECT * from R3, R4

Установим, что получится в результате выполнения этой операции реляционной алгебры и соответствующего ей запроса SQL. Даны два отношения R3 и R4:

R3 R4
A1 A2 A3 A4 A5 A6
3 hh yl ms 3 hh
4 pp a1 sr 4 pp
1 rr yl ms

В новом отношении должны присутствовать все атрибуты (столбцы) двух отношений. Сначала первая строка отношения R3 сцепляется с каждой из двух строк отношения R4, затем вторая строка отношения R3, затем третья. В результате должно получиться 3 Х 2 = 6 кортежей (строк). Получаем такое новое отношение:

R
A1 A2 A3 A4 A5 A6
3 hh yl ms 3 hh
3 hh yl ms 4 pp
4 pp a1 sr 3 hh
4 pp a1 sr 4 pp
1 rr yl ms 3 hh
1 rr yl ms 4 pp

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

Министерство образования Российской Федерации

Пензенский государственный университет

Факультет вычислительной техники

Кафедра "Информационно-вычислительные системы"

Дисциплина "Базы данных"

Отчет по лабораторной работе № 1

"Операции с базой данных"

Выполнил: ст-ка гр. 13ВЭ1

Юдина С.В.

Принял: к. т. н., доцент

Долгова И.А.

  • 1. Цель работы
  • Задание
  • 2. Выполнение работы
  • Создание базы данных
  • Регистрация базы данных
  • Подключение к базе данных
  • Извлечение метаданных
  • Удаление базы данных
  • Заключение
  • Приложения

1. Цель работы

Изучить операции с базами данных в целом. Получить навыки использования приложения "IBExpert" для создания, удаления, регистрации, подключения, извлечения метаданных, резервного копирования и восстановления базы данных СУБД Firebird. Изучить SQL-операторы для создания, подключения и удаления базы данных.

Задание

1) Изучить операции с базами данных в целом.

2) Получить навыки использования приложения "IBExpert" для создания, удаления, регистрации, подключения, извлечения метаданных, резервного копирования и восстановления базы данных СУБД Firebird.

3) Изучить SQL-операторы для создания, подключения и удаления базы данных.

Для варианта 17 исходными данными являются имя файла с БД - YudinaDom1. FDB, Логин - TEAM001, Пароль - slave001.

2. Выполнение работы

Создание базы данных

С помощью инструмента IBExpert была создана база данных. При этом в качестве сервера базы данных использовался удаленный сервер с именем sqledu03.

Файл базы данных имеет имя D: \Data\Лр1\YudinaDom1. FDB, Сервер - удаленный, Имя сервера - sqledu03, Протокол - TCP/IP, Client Library File - C: \Program Files\Firebird\Firebird_2_5\bin\fbclient. dll, Имя пользователя - TEAM001, Пароль - slave001, Размер страницы БД - 16384, Кодировка - WIN1251, Диалект БД - Диалект 3.

База данных зарегистрирована под именем YudinaDom1. FDB. При этом использован сервер Firebird версии 2.5 (См. Приложение A, Рис.1. Создание БД).

Регистрация базы данных

Для регистрации базы данных нужно выбрать пункт меню База данных > Зарегистрировать базу. В результате открывается диалоговое окно "Регистрация базы данных", в котором надо заполнить практически такие же поля, что и при создании базы данных, затем нажать кнопку . После регистрации вся введенная о базе данных информация запоминается приложением IBExpert и в окно "Database Explorer", в дерево на вкладке "Базы" добавляется узел с зарегистрированной базой данных (См. Приложение А, Рис.2. Регистрация БД).

база оператор резервное копирование

Подключение к базе данных

Чтобы подключиться к зарегистрированной базе данных, необходимо выбрать базу данных в списке и выполнить команду База данных > Подключиться к базе. Название подключенной базы данных в окне "Database Explorer" будет выделено жирным шрифтом, а также появятся вложенные узлы с объектами, содержащимися в подключенной базе данных (См. Приложение А, Рис.3. Подключение к БД).

Извлечение метаданных

Для извлечения метаданных используется команда главного меню Инструменты > Извлечение метаданных, которая открывает окно "Извлечение метаданных". В окне устанавливаем флажок "Извлечь всё", затем с помощью выпадающего списка "Извлекать в" выбираем "Script Executive", в которое будут извлечены метаданные, а затем нажимаем кнопку [Начать извлечение] (См. Приложение А, Рис.4. Извлечение метаданных). После извлечения открывается окно "Редактор скриптов", в котором будут находиться извлеченные метаданные. (См. Приложение А, Рис.5. Извлечение метаданных (редактор скриптов)).

Удаление базы данных

Для удаления базы данных необходимо выбрать команду меню База данных > Удалить базу, а затем подтверждаем свое желание в диалоговом окне. (См. Приложение А, Рис.6. Удаление БД (меню База данных)).

Создание базы данных при помощи "Редактора скриптов"

Для создания базы данных необходимо выполнить в приложении IBExpert команду Инструменты > Редактор скриптов, затем ввести команды, создающие базу данных в окне "Редактор скриптов" и нажать кнопку [Выполнить скрипт] (См. Приложение А, Рис.7. Создание БД (редактор скриптов). В результате должно появиться сообщение об успешном выполнении скрипта. Для дальнейшей работы необходимо вновь выполнить регистрацию базы данных и подключиться к ней.

Резервное копирование базы данных и ее восстановление

Для создания резервной копии базы данных с помощью приложения "IBExpert" необходимо выполнить команду меню Службы > Резервирование базы данных, в открывшемся диалоговом окне "Резервирование БД" задать несколько параметров и нажать кнопку [Начать резервное копирование]. В результате будет создан файл с резервной копией (См. Приложение А, Рис.8. Резервное копирование).

Для восстановления базы данных из резервной копии используется команда Службы > Восстановление базы данных. В результате открывается диалоговое окно "Восстановление БД", в котором надо в поле "Restore Info" выбрать строку "Новую базу", в поле "Database file" ввести имя восстанавливаемого файла базы данных (SQLEDU03: D: \DATA\Лр1\YudinaDom1. FDB), в поле "File Name" ввести имя файла, из которого будет восстанавливаться база данных, затем нажать кнопку (См. Приложение А, Рис.9. Восстановление БД).

Файлы, полученные при выполнении лабораторной работы.

Отредактирован сценарий создания базы данных. (См. Приложение А, Рис. 10. Редактор сценария базы данных). Сохранен файл сценария на сервере в папке "ЛР1"с таким же именем, как и имя базы данных, стандартное расширение". sql".

В результате выполнения лабораторной работы были созданы следующие файлы:

1) Сценарий - D: \Data\Лр1\ YudinaDom1. sql

2) БД - D: \Data\Лр1\ YudinaDom1. fdb

3) Резервная копия БД - D: \Data\Лр1\YudinaDom1. fbk

4) Файл с отчетом - D: \Data\Лр1\Отчет1. odt

Ответы на контрольные вопросы

1. Дать определение термина "База данных".

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

2. Что означают сокращения СУБД и DBMS?

Система Управления Базами Данных. Database Management System .

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

Добавление новых данных, удаление, редактирование.

4. Что представляет собой база данных СУБД Firebird? Какой получился размер файла с базой данных? От чего он зависит? Что содержится в файле с базой данных?

СУБД Firebird - это реляционная СУБД, предназначенная для использования в приложениях с архитектурой клиент/сервер. В Firebird база данных представляет собой один или несколько файлов, в которых хранятся данные пользователя и метаданные - 2,40 Мбайта. От количества содержащейся информации. Первичные файлы данных, вторичные файлы данных и файлы журналов.

Размер влияет на эффективность работы СУБД, размер страницы рекомендуется делать равным размеру кластера файловой системы, по умолчанию размер страниц равен 16384.

6. Что надо сделать, чтобы в базе данных можно было хранить символы русского алфавита?

Поле ввода "Кодировка" предназначено для выбора набора символов национального алфавита для текстовых полей базы данных. Русские символы Windows содержатся в кодировке Win1251. Если в это поле ввести NONE, то будет поддерживаться кодировка, используемая операционной системой.

7. Назвать отличия между первым и третьим диалектами базы данных.

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

8. Какие существуют способы создания и удаления базы данных?

Для создания базы данных можно использовать один из двух способов:

1. Выполнить команду База данных > Создать базу в приложении IBExpert, ввести параметры создаваемой базы данных в диалоговом окне "Создание базы данных" и нажать кнопку [OK ].

2. Выполнить в приложении IBExpert команду Инструменты > Редактор скриптов , затем ввести команды, создающие базу данных в окне "Редактор скриптов" и нажать кнопку [Выполнить скрипт ] (F9).

Для удаления:

1. Выполнить в программе "IBExpert" команду меню База данных > Удалить базу, а затем подтвердить свое желание в диалоговом окне.

2. Выполнить SQL-оператор DROP DATABASE.

3. Удалить файл с базой данных вручную.

9. Как указывается путь до файла с базой данных, расположенной на удаленном компьютере?

Имя сервера: Путь к файлу (sqledu03: D: \Data\Лр1\ YudinaDom1. fdb)

10. Какие стандартные расширения имеют файлы баз данных и сценариев?

Файл базы данных". fdb", сценария". sql".

11. Как с помощью приложения "IBExpert" подключиться к имеющейся базе данных, расположенной на локальном компьютере?

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

12. Какое имя и начальный пароль имеет администратор сервера Firebird?

Имя: SYSDBA, пароль: masterkey.

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

Сценарий может содержать поясняющие комментарии двух видов: многострочный комментарий (начинается символами "/*" и заканчивается символами "*/") и однострочный комментарий, который начинается символами " - " и продолжается до конца строки.

14. Сколько системных таблиц содержит созданная база данных? С каких символов они начинаются? Привести названия любых 3-х системных таблиц.

34 таблицы. Начинается с символа "sys.". Примеры: "sys. sysschobjs" - Существует в каждой базе данных. Каждая строка представляет объект базы данных; "sys. sysscalartypes" - Существует в каждой базе данных. Содержит по строке на каждый системный или пользовательский тип данных; "sys. sysowners" - Существует в каждой базе данных. Каждая строка соответствует участнику базы данных.

15. Каковы правила оформления текста сценария?

Выражения в операторе всегда начинается с новой строки, с отступом в 1 позицию от правого края родительского элемента оператора (SELECT, FROM, WHERE, INTO, …). Содержащиеся в сценарии операторы отделяются друг от друга символом ";". При объявлении таблиц наименования столбцов, типы, значения по умолчанию, ограничения Nullable выравниваются по левому краю.

Заключение

В ходе выполнения лабораторной работы были изучены операции с базами данных в целом. Получены навыки использования приложения "IBExpert" для создания, удаления, регистрации, подключения, извлечения метаданных, резервного копирования и восстановления базы данных СУБД Firebird. Изучены SQL-операторы для создания, подключения и удаления базы данных.

Размещено на Allbest.ru

Подобные документы

    Система управления базами данных (СУБД). Программные средства, предназначенные для создания, наполнения, обновления и удаления базы данных. Структура, модели и классификация баз данных. Создание каталогов, псевдонимов, таблиц, шаблонов и форм СУБД.

    презентация , добавлен 09.01.2014

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

    курсовая работа , добавлен 19.11.2012

    Классификация баз данных. Выбор системы управления базами данных для создания базы данных в сети. Быстрый доступ и получение конкретной информации по функциям. Распределение функций при работе с базой данных. Основные особенности иерархической модели.

    отчет по практике , добавлен 08.10.2014

    Язык описания данных Oracle. Предназначение базы данных для хранения информации. Создание и изменение таблиц с помощью операторов Create и Alter table. Правила именования таблицы. Операторы Rename и Truncate. Метод создания и удаления представления.

    презентация , добавлен 14.02.2014

    Механизм и основные этапы создания и администрирования базы данных для Картотеки книг или библиотеки при помощи средств Microsoft SQL Server. Характеристика данной базы и требования, предъявляемые к ней. Основные операции с исследуемой базой данных.

    курсовая работа , добавлен 21.06.2011

    Понятие реляционной модели данных, целостность ее сущности и ссылок. Основные этапы создания базы данных, связывание таблиц на схеме данных. Проектирование базы данных книжного каталога "Books" с помощью СУБД Microsoft Access и языка запросов SQL.

    курсовая работа , добавлен 25.11.2010

    Проектирование физической и логической моделей удаленной базы данных для АЗС. Разработка базы данных в СУБД Firebird с помощью утилиты IBExpert. Создание клиентского приложения для Windows с использованием клиент-серверной технологии в среде C++ Builder.

    курсовая работа , добавлен 18.01.2017

    Создание базы данных в среде MS Access. Создание и работа с базой данных в ателье. Алгоритм решения задачи. Выбор пакета прикладных программ. Проектирование форм выходных документов с использованием СУБД MS Access. Структура записи таблиц базы данных.

    курсовая работа , добавлен 30.01.2009

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

    реферат , добавлен 27.12.2013

    Назначение базы данных для обеспечения работы автобусного парка. Основные возможности админпанели. Выполняемые базой данных и приложением функции. Инфологическое моделирование данных. Описание разработанного web-приложения. Проектирование базы данных.

Операции над базой данных

Стандартным способом доступа к данным базы является вход по ассоци­ативному адресу {образцу), осуществляемый операцией "поиск по образ­цу". Аргумент операции "поиск по образцу" представляет собой структу­ру, характер которой может меняться в достаточно широком диапазоне в зависимости от функций, выполняемых базой данных. Результатом этой операции является множество (возможно, пустое - негативный резуль­тат) всех референтов образца-аргумента, т.е. фрагментов базы данных, каждый из которых представляет собой ответ на запрос, специфициро­ванный в форме этого образца.

Можно выделить несколько типов образцов.

Простой образец - это фрагмент структуры того же типа, что и каркас. В вершинах простого образца компоненты могут указываться частично, например, только имя или только тип. Характер процедуры, реализуемой операцией "поиск по образцу", может быть двух видов:

Точное совпадение - референты изоморфны образцу с точностью до отсутствующих элементов в образце;

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

Разрывный образец - это совокупность простых образцов, свя­занных дугами специального вида, отсутствующими в каркасе. В этом случае графы образца и референта не являются изоморфными, посколь­ку в последнем отсутствуют специальные дуги. Можно сказать, что при разрывном образце поиск происходит не на самом каркасе, а на его тран­зитивном замыкании по одному или нескольким типам отношений. В. Образец с отрицательным контекстом представляет собой пару

< положительный образец, отрицательный образец >,

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

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

Сложный образец - представляет собой совокупность видов образ­цов, перечисленных выше. Результатом поиска по сложному образцу является сочетание процедур поиска по каждому из образцов совокуп­ности.

Будем делить операцию "поиск по образцу" на два основных вида: одновариантный и многовариантный поиск.

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

Одним из существенных факторов, определяющих результат опера­ции "поиск по образцу" при одновариантном поиске, является то, фик­сируется или нет порядок сканирования каркаса при выполнении опе­рации "поиск по образцу". Например, при каркасе-цепочке это может быть просмотр слева направо или справа налево, при дереве - от корня к листьям или в обратном направлении. В тех случаях, когда порядок просмотра является внешней характеристикой базы данных, он может быть фиксированным (встроенным) или изменяемым в процессе работы (настраиваемым).

Еще одной операцией над базой данных является добавление. Смысл этой операции - присоединение новых данных к данным, находящимся в базе. Аргумент этой операции состоит из двух частей: первая пред­ставляет собой тот фрагмент, который присоединяется к базе данных, и имеет ту же организацию, т.е. состоит из каркаса и набора компонент, сопоставленных его вершинам; вторая часть является, в общем случае, ассоциативным адресом, указывающим, к каким вершинам каркаса бу­дет присоединяться новый фрагмент.


© 2024, leally.ru - Твой гид в мире компьютера и интернета