
- •Определение бд и БнД. Состав и структура БнД. Назначение основных компонентов БнД.
- •Понятие хорошо и слабо структурированных данных. Основные характеристики документальных и фактографических бд.
- •Понятие ключа и индекса. Прямая и инвертированная формы индекса. Примеры.
- •Характерные свойства и отличия линейных и нелинейных структур данных. Примеры.
- •Типология простых запросов. Примеры.
- •Сходство и отличие процессов обработки данных средствами файловой системы и субд.
- •Логические модели данных.
- •Реляционная модель данных
- •Операции реляционной алгебры. Определение операций соединения и пересечения через пять базовых операций.
- •Основные этапы эволюции систем обработки данных. Основные отличия в концепциях обработки данных разных этапов.
- •Назначение и особенности этапов проектирования бд.
- •Системный анализ предметной области. Методика сбора фактов. Методика интеграции представлений.
- •Концептуальные модели данных. Модель «сущность-связь». Сущности, атрибуты, связи. Сущность-связи и мощности связей. Примеры.
- •Номер брони*
- •Номер билета*
- •15. Получение реляционной схемы из er-диаграммы. Примеры.
- •16. Функциональная зависимость. Детерминант функциональной зависимости. Полная и частичная функциональная зависимость. Примеры.
- •17. Понятие функциональной, транзитивной и многозначной зависимости. Примеры.
- •18. Нормализация отношений. Первая, вторая, третья нормальные формы. Примеры.
- •19. Нормализация отношений. Нормальная форма Бойса-Кодда. Примеры.
- •20. Нормализация отношений. Четвертая и пятая нормальные формы. Примеры.
- •21. Нормализация отношений. Процедура нормализации. Примеры применения процедуры нормализации к универсальному отношению.
- •22. Языки определения данных и манипулирования данными. Назначение. Функциональные возможности (на примере sql).
- •23. Sql. Основные понятия и компоненты.
- •24. Sql. Ограничения целостности. Примеры.
- •25. Sql. Команда изменения структуры таблицы. Примеры.
- •1. Добавление столбца.
- •2. Модификация столбца.
- •3. Удаление столбца.
- •4. Добавление ограничений на уровне таблицы.
- •2. Изменение данных – команда update
- •Удаление данных – команда delete
- •27. Sql. Команда создания таблицы. Примеры.
- •28. Sql. Извлечение данных (команда select). Примеры.
- •29. Sql. Типы соединений таблиц в команде select.
- •30. Sql. Команда select с группировкой данных. Групповые операции. Примеры.
- •31. Представление операций реляционной алгебры с помощью sql.
- •32. Целостность бд. Понятие транзакции. Модели транзакций.
- •33. Виды конфликтов при параллельном выполнении транзакций. Сериализация транзакций. Захват и освобождение объекта.
- •34. Технологии обработки данных. Функции «типового» приложения обработки данных.
- •35. Архитектуры распределенной обработки данных.
- •36. Архитектуры обслуживания клиентских запросов. Достоинства и недостатки.
- •37. Хранилища данных. Основные отличия olap и oltp-систем.
- •38. Трехуровневая архитектура схем баз данных в субд.
- •39. Физические модели баз данных. Типы индексов.
- •40. Интеграция xml-документов и реляционных бд на примере Transact-sql.
25. Sql. Команда изменения структуры таблицы. Примеры.
Специальная команда ALTER TABLE предназначена для модификации структуры таблицы. С ее помощью можно изменять свойства существующих столбцов, удалять или добавлять в таблицу столбцы, а также управлять ограничением целостности как на уровне столбца, так и на уровне таблицы, т.е. выполнять следующие функции:
• добавить в таблицу определение нового столбца;
• удалить столбец из таблицы;
• изменить значение по умолчанию для какого-либо столбца;
• добавить или удалить первичный ключ таблицы;
• добавить или удалить внешний ключ таблицы;
• добавить или удалить условие уникальности;
• добавить или удалить условие на значение.
Основные режимы использования команды ALTER TABLE следующие:
• добавление столбца;
• удаление столбца;
• модификация столбца;
• изменение, добавление и удаление ограничений (первичных и внешних ключей, значений по умолчанию).
1. Добавление столбца.
ALTER TABLE Студенты
ADD Год_поступления INTEGER NOT NUL DEFAULT YEAR(GETDATE())
В структуру таблицы «Студент» будет добавлен еще один столбец со значением по умолчанию, равным текущему году.
2. Модификация столбца.
Для модификации существующего столбца служит ключевое слово ALTER COLUMN. Изменение столбца невозможно, если:
• столбец участвует в ограничениях PRIMARY KEY или FOREGIG KEY;
• на столбец наложены ограничения целостности CHECK или UNIQUE (исключение – столбцы, имеющие тип данных переменной длины, т.е. типы данных, начинающиеся на var);
• со столбцом связано значение по умолчанию.
Определяя для столбца новый тип данных, следует помнить о том, что старый тип данных должен конвертироваться в новый.
ALTER TABLE Студенты
ALTER COLUMN Номер_группы CHAR(6) NOT NULL
3. Удаление столбца.
Нельзя удалять столбцы с ограничением целостности CHECK, FOREIGN KEY, UNIQUE или PRIMARY KEY, а также столбцы, для которых определены значения по умолчанию.
ALTER TABLE Студенты
DROP COLUMN Год_поступления
4. Добавление ограничений на уровне таблицы.
Добавление внешних ключей в таблицу «Учебный план» (создание связи с именем FK_Дисциплина и связи с именем FK_Кадровый_состав_):
ALTER TABLE Ученый план
ADD CONSTRAINT FK_Дисциплина
FOREIGN KEY (ID_Дисциплина)
REFERRNCES Дисциплины
ALTER TABLE Ученый план
ADD CONSTRAINT FK_Кадровый_состав
FOREIGN KEY (ID_Преподаватель)
REFERRNCES Кадровый_состав
С помощью конструкции ADD CONSTRAINT создается поименованное ограничение. Необходимо отметить, что удаление любого ограничения на уровне таблицы происходит только по его имени, поэтому ограничение должно быть поименовано (чтобы его можно было удалить).
Добавление значения по умолчанию для столбца Номер_группы:
ALTER TABLE Студент
ADD CONSTRAINT DEF_Номер_группы DEFAULT 1 FOR Номер_группы
На уровне таблицы будет создано ограничение целостности с именем DEF_Номер_группы.
5. Удаление ограничений.
ALTER TABLE Учебный_план
DROP CONSTRAINT FK_Дисциплина
ALTER TABLE Студент
DROP CONSTRAINT DEF_Номер_группы.
6. Удаление таблиц.
Невозможно удалить таблицу, если на нее с помощью ограничения целостности FOREIGN KEY ссылается другая таблица: попытка удаления таблицы «Дисциплины» вызовет сообщение об ошибке, так как на таблицу «Дисциплины» ссылается таблица «Учебный_план»: DROP TABLE Дисциплины.
26. SQL. Команды добавления, модификации и удаления данных. Примеры.
1. Добавление данных – команда INSERT
Команда может быть использована для вставки как одной, так и множества строк.
INSERT [INTO] <имя_таблицы> [<список_столбцов>]
VALUES(<список_значений>)
Имя таблицы – идентифицирует имя таблицы, в которую необходимо вставить строку данных.
Список столбцов – задает имена столбцов, в которые будет производиться добавление данных.
Пример: таблица «Сводная_ведомость». Каждая строка таблицы содержит результат сдачи экзамена (зачета) по отдельной дисциплине отдельным студентом. Если студент, ID_Студент которого равен 10, сдал экзамен со значением 4 в столбце ID_Дисциплина на оценку «пять», то команда добавления этих данных в таблицу «Сводная_ведомость» выглядит следующим образом:
INSERT Сводная_ведомость
VALUES (10,4,5)