Файл: Конспект лекций по учебной дисциплине по дисциплине мдк. 02. 02. Технология разработки и защиты баз данных.doc

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 26.04.2024

Просмотров: 247

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

Содержание

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА

ТЕМАТИЧЕСКИЙ ПЛАН

ПОЯСНЕНИЯ К НАПИСАНИЮ КОНСПЕКТА

Раздел 1 Основы теории баз данных.

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

Тема: Классификация баз данных. Архитектура баз данных.

Тема: Администратор базы данных и его функции. Пользователи баз данных.

Раздел 2 Модели данных.

Тема: Понятие о моделировании данных

Тема: Иерархическая модель данных. Сетевая модель данных.

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

Тема: Основные понятия реляционной модели данных.

Тема: Инфологическая модель данных.

Проектирование инфологической модели данных

Тема: ER моделирование базы данных.

Раздел 4. Основы реляционной алгебры.

Тема: Реляционная алгебра. Операции: объединение, пересечение, разность, декартово произведение

Тема: Выборка, проекция, соединение, деление

Тема: Применение реляционной алгебры.

Раздел 5. Этапы проектирования базы данных.

Тема: Этапы проектирования базы данных.

Тема: Концептуальное моделирование предметной области.

Тема: Метод нормальных форм

Тема: Нормальные формы

Тема: ER моделирование предметной области.

Тема: Методы создания основных объектов

Тема: Создание таблиц в СУБД Access

Тема: Разработка схемы базы данных

Тема: Создание однотабличных запросов в СУБД Access.

Тема: Создание многотабличных запросов в СУБД Access.

Раздел 6. Язык запросов SQL.

Тема: Основные понятия и компоненты языка SQL.

Тема: Выражения, условия и операторы языка SQL.

Тема: Средства управления таблицами.

Тема: Средства управления данными.

Раздел 7. Оформление и работа с базой данных.

Тема: Типы и виды форм. Методы и средства создания.

Тема: Создание отчётов. Создание печатных форм отчётов

Тема: Макросы. Основные макрокоманды

1 Определение макроса

1 Определение макроса

Раздел 8. Распределенные, параллельные базы данных.

Тема: Основные условия и требования к распределённой обработке данных

1 Терминология распределенных баз данных

3 Принципы функционирования распределенной БД

1 Терминология распределенных баз данных

3 Принципы функционирования распределенной БД

Тема: Базовые архитектуры распределенных баз данных

Тема: Архитектура сервера баз данных

ПЛАН

2 Архитектура «активный сервер баз данных»

3. Архитектура сервера приложений

2 Архитектура «активный сервер баз данных»

3. Архитектура сервера приложений

Тема: Доступ к базам данных в архитектуре «клиент-сервер»

Тема: Вычисление распределенных запросов.

Тема: Транзакции и целостность базы данных.

Тема: Триггеры и хранимые процедуры.

Раздел 9. Защита базы данных.

Тема: Безопасность данных. Управление правами доступа.

Тема: Обязательные методы защиты базы данных.

3 Поддержка мер обеспечения безопасности в языке SQL

3 Поддержка мер обеспечения безопасности в языке SQL

Директивы GRANT и REVOKE

Раздел 10. Базы данных в Интернете.

Тема: Основы XML.

1 Определение XML

1 Определение XML

Тема: Доступ к данным с помощью ADO.NET.



• PRIMARY KEY — поле, для которого задано это ограни­чение, должно выступать в роли первичного ключа; ' Значение поля по умолчанию указывается при помощи ключевого слова DEFAULT.

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

Формирование запросов на языке SQL предполагает ввод команд с клавиатуры в строгом соответствии с их форматами. Для записи форматов команд (иногда усеченных) будем ис­пользовать следующие соглашения:

< > (угловые скобки). То, что в них указано, определяет пользователь;

[ ] (квадратные скобки). Выделяют те части команды, ко­торые могут отсутствовать;

{},... Заключенная в фигурные скобки часть команды мо­жет быть повторена несколько раз, причем повторы разделяются запятыми;

| (вертикальная черта). Означает альтернативный выбор.

Контрольные вопросы

  1. Для каких целей создавался язык SQL?

  2. Каковы основные этапы формирования стандарта SQL?

  3. Является ли SQL языком программирования?

  4. Как можно ускорить выполнение операции в SQL?

  5. Почему SQL считается реляционно-полным?

  6. Из каких разделов состоит язык SQL?

  7. Как выполнить объединение таблиц?

  8. Какие действия выполняет оператор DELETE без фразы WHERE?

  9. Какими способами можно заполнить созданную таблицу данными?

  10. Как организовать перерасчет значений каких-либо столбцов таблицы?

  11. Напишите оператор создания таблицы Товары с указанием значений по умолчанию и условий проверки данных в некоторых полях?

  12. Как задать составной первичный ключ при создании таблицы?

  13. Для чего нужны представления?

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

ЛЕКЦИЯ 24

Тема: Выражения, условия и операторы языка SQL.


ПЛАН

1 Синтаксис языка SQL

2 Инструкции и предложения SQL
ЛИТЕРАТУРА: [2], стр. 84 – 90
1 Синтаксис языка SQL

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

Для организации запросов с помощью SQL используют определённый синтаксис. Разделители SQL:

1) запятая используется для разделения элементов списка, имён полей в запросе;

2) квадратные скобки – для задания имён полей, которые содержат пробелы;

3) точка – для разделения имени таблицы от имени поля, если в запрос включены поля нескольких таблиц;

4) строки в SQL заключаются в одинарные кавычки (‘Пушкин’);


5) каждая команда в SQL заканчивается точкой с запятой.

Например: Книги. Название, Книги. [Год издания], Издательства. Название;

Язык SQL состоит из ключевых слов и языковых конструкций, к которым относят: инструкции, предложения, операторы и функции.

2 Инструкции и предложения SQL

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

Инструкции SQL подразделяются на 2 категории:

1) Инструкции Языка Определения Данных (DDL) – формируют запросы для создания, изменения, удаления объектов БД, изменения структуры схемы БД.

2) Инструкции Языка Манипулирования Данных (DML) – формируют запросы, управляющие информацией (удаление, изменение, добавление, отображение данных).

Наиболее часто используемыми инструкциями являются инструкции Языка Манипулирования Данных (DML):

1) SELECT – используются для создания запроса на выборку

2) INSERT - для добавления данных

3) UPDATE – на изменение данных

4) DELETE – на удаление данных

Предложения – команды, изменяющие условия отбора, используемые для определения данных, которые необходимо отобрать или обработать.

Рассмотрим некоторые предложения:

1) FROM

2) WHERE

3) GROUP BY

4) HAVING

5) ORDER BY

В SQL используются следующие операторы: арифметические, присваи­вания и сравнения, логические, идентификации.

В таблице приведен список арифметические, присваивания и сравнения, логические операторов.

Знаки арифметических операций

Знаки операций сравнения

Логические операции

+ сложение

> больше

And логическое И

- вычитание

< меньше

Or логическое ИЛИ

* умножение

= равенство (присвоение)

Not логическое отрицание НЕ

/ деление

>= больше или равно

Xor исключающее ИЛИ

^ возведение в степень

<= меньше или равно

 

\ целочисленное деление

<> не равно

 


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

Is - при использовании вместе с Null определяет, является ли значение Null или Not Null, например. Is Null означает значение поля пусто.


BETWEEN AND - позволяет задать диапазон значений. Например, усло­вие >= 10 and <=20 можно записать так BETWEEN 10 and 20

IN - позволяет задать используемый для сравнения список значений. На­пример, выражение ''хлеб"' ог '"вода" ог "земля" можно записать так IN("хлеб","вода","земля").

LIKE - используется для организации поиска по шаблону.

Символ

Шаблон обозначает

Условие

Access найдёт…

*

Произвольное количество алфавитно-цифровых символов в произвольном месте

LIKE “*Мар*”

Ул. 8 Марта, 45-23; ул. Маршака, 180а-1; Мартин

?

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

LIKE“м?р”, “Т??я”

МУР, мир, мор, мер, Толя, Таня, Тоня, То1я, Тося, Тася

#

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

LIKE “23#45”, LIKE“52-5#-4#”

23545, 23145, 23745, 23945 52-55-45? 52-59-41

[ ]

Любой из перечисленных в скобках символ

LIKE “З[оаи]лин”

Зозулин, Зазулин, Зизулин. НО не найдёт Зезулин, Зузулин.

!

Любой один символ, кроме, указанных в скобках

LIKE “ко[!рс]а”

Коза, кола, кома. НО не найдёт кора, коса.

-

Любого одиночного символа из указанного интервала

LIKE “ко[к-м]а”

Кола, кома


Контрольные вопросы

  1. Каковы основные функции оператора SELECT?

  2. Что означает символ «*» в операторе SELECT?

  3. Как организуется вывод данных с группированием по какому-либо полю (столбцу) таблицы?

  4. Как подсчитать число строк таблицы?

  5. Как задаются имена столбцов, если в запросе используются несколько таблиц?

  6. Какие виды подзапросов вы знаете и каковы ограничения при их использовании?

  7. Создание производных столбцов

  8. Арифметические операции

  9. Определение последовательности вычисления

ЛЕКЦИЯ 25

Тема: Средства управления таблицами.


ПЛАН

1 Инструкция CREATE TABLE

2 Инструкция CREATE INDEX

3 Инструкция INSERT

4 Инструкция DELETE

5 Инструкция ALTER TABLE
ЛИТЕРАТУРА: [1], стр. 181 – 191
1 Инструкция CREATE TABLE


CREATE TABLE таблица (поля, индексы)
Поля - список полей с характеристиками.
Индексы - необязательный список составных индексов.

Инструкция CREATE TABLE создает таблицу. Каждое поле в списке поля может иметь до трех элементов, разделенных пробелами: “Поле тип индекс”.
Поле - имя поля.
Тип - тип поля. Если поле текстовое, то в круглых скобках указывается размер в байтах.
Индекс - предложение CONSTRAINT для создания простого индекса. Указывается только в случае, если по данному полюнужно создать индекс. Формат:

CONSTRAINT имя вариант
Имя - имя индекса.
Вариант - необязательный параметр. Может принимать одно из следующих значений:
PRIMARY KEY - поле ключевое;
UNIQUE - уникальный индекс ( в этом поле не допускаются повторения);
REFERENCES - внешняя таблица (внешнее поле) – поле во внешней таблице.

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

Пример
CREATE TABLE [Расписание экзаменов](
[Предмет] INTEGER CONSTRAINT КлПоле PRIMARY KEY,
[Название предмета] TEXT,
[Преподаватель] INTEGER,
Группа TEXT(10),
Дата DATATIME);
2 Инструкция CREATE INDEX

Инструкция CREATE INDEX создает новый индекс для существующей таблицы.

CREATE [UNIQUE] индекс ON таблица (список_полей)
  [WITH вариант]

 В квадратных скобках указаны необязательные элементы синтаксиса.
Список_полей - список полей, составляющих индекс.
Индекс - имя создаваемого индекса.
Вариант - дополнительная характеристика индекса – один из вариантов:PRIMARY[(индексированные поля)],DISALLOWNULL, IGNORENULL. Последние два варианта запрещают использование пустых значений в индексированных полях.

Инструкция
DROP INDEX индекс ON таблица;
удаляет индекс из таблицы.
Пример
CREATE INDEX Предметы
ON [Расписание экзаменов]([Название предмета], [Группа]);
ПримерDROP INDEX Предметы;
3 Инструкция INSERT

Инструкция INSERT вставляет одну или несколько новых строк

…;в таблицу или запрос. Вариант

INSERT INTO таблица SELECT

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

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

INSERT INTO Преподаватели
SELECT Преподаватель, ФИО, Должность, Степень, Звание
FROM [Новые преподаватели]
WHERE Дата
Если требуется добавить только одну запись, можно использовать другой вариант инструкции INSERT.

INSERT INTO таблица VALUES(список_значений)
или

INSERT INTO таблица (список_полей) VALUES (список_значений)

Если список полей опущен, предложение VALUES должно содержать значения для каждого поля таблицы.
Пример
INSERT INTO Преподаватели (Преподаватель, ФИО,Должность)
VALUES (7, ”Журавлев”, ”Ассистент”);

4 Инструкция DELETE

DELETE таблица.* FROM таблицы WHERE условие;

Инструкция DELETE позволяет удалять записи из таблиц, перечисленных в предложении FROM. Удаляются записи, удовлетворяющие условию WHERE.

Если в предложении FROM указана одна таблица, то ее можно обозначить звездочкой. Таблицу можно удалить с помощью инструкции

DROP таблица;

Удаление данных из отдельных полей можно осуществить с помощью инструкции UPDATE, в которой следует указать SET поле=Null.
Пример

DELETE * FROM Преподаватели WHERE Преподаватель=3;
     Отменяются все экзамены преподавателя с шифром 3.

5 Инструкция ALTER TABLE

Инструкция ALTER TABLE позволяет добавлять и удалять поля и индексы таблицы в соответствии с форматом
ALTER TABLE таблица вариант;
Вариант принимает в каждом случае одно из значений:
ADD COLUMN поле тип [CONSTRAINT индекс];
ADD CONSTRAINT составной_индекс;
DROP COLUMN поле;
DROP CONSTRAINT индекс.

ADD COLUMN добавляет в таблицу новый столбец, который становится последним столбцом таблицы. Необязательное слово COLUMN является поясняющим. Оно не связано с какими-либо операциями и может быть опущено. Если поле текстовое, после слова TEXT можно указать в круглых скобках длину поля в символах.
Пример
ALTER TABLE Преподаватели
ADD COLUMN Комментарий TEXT(50);

Вариант ADD CONSTRAINT позволяет создать в таблице составной индекс. Варианты DROP удаляют из таблиц поля или индексы.

Контрольные вопросы

  1. Использование объединений.

  2. Создание объединений с помощью синтаксиса JO IN и W H E R E

  3. Создание произвольного естественного объединения с использованием предложения N A T U R A L JO IN

  4. Создание внутреннего объединения с помощью команды IN N E R J O IN

  5. Создание внешних объединений с помощью команды O U T E R JO IN

  6. Порядок создания таблиц

  7. Основные принципы работы с ограничениями

  8. Создание новой таблицы с помощью команды CREATE TABLE

  9. Запрет значения null с помощью ограничения N O T N U L L

  10. Присвоение значения по умолчанию с помощью ограничения D E F A U L T

  11. Задание первичного ключа с помощью ограничения P R IM A R Y K E Y

  12. Задание внешнего ключа с помощью ограничения FO REIG N K E Y

  13. Присвоение уникальных значений с помощью ограничения U N IQ U E

  14. Проверка значений столбца с помощью ограничения C H E C K

  15. Создание временной таблицы с помощью команды C REATE T EM PO R A R Y T A B L E

  16. Изменение таблицы с помощью команды ALTER T A B L E

  17. Удаление таблицы с помощью команды D R O P T A B L E