
- •1) Команды управления данными - insert, update, delete
- •2) Особенности применения команд insert, update, delete к представлениям
- •3) Понятие пользователя. Его создание и управление
- •4) Назначение прав пользователю
- •5) Отмена прав у пользователей с учетом их статуса 6) привилегированные пользователи и их привилегии
- •7) Обеспечение целостности данных в схеме базы данных (фактически, ключи и их использование)
- •8) Понятие транзакции. Требования к транзакциям, 9, 10, 11
- •12),13) Триггер как разновидность хранимой процедуры(for after)
- •15) Функция определенная пользователем. Скалярные и табличные
- •16) Хранимые процедуры (3 вида: без параметров, с входными параметрами, с входными выходными)
- •17) Параллельность и блокировки. Проблемы существующие в параллельных сессиях (4 штуки)
- •18) Механизм блокировок ( 4 вида уровней изоляции)
- •19) Объекты блокировок
- •20) Эскалация блокировок и 2 способа разрешения
- •21) Алгоритм работы менеджера блокировок
- •22) Простые блокировки (разделяемая, монопольная и обновление)
- •23) Блокировки намерений (на разделение, на монопольное использование и на обновление)
- •24) Блокировки схемы данных (стабильности, изменения схемы)
- •2 5) Кольцо преобразований блокировок (пояснить почему возможно движение по кольцу)
- •27) Операции репликации, виды метафор
- •28) Топология репликации
- •29) Типы репликации (снимок, транзакционное и соединение)
- •30) 31) 32) Резервное копирование (полное, частичное, транзакционное)
- •33) Создание индексов и виды индексов
- •34) Средства для проверки соответствия заданному шаблону
- •35) Структура полнотекстового поиска (алгоритм описан в презентации)
- •36) Управление полнотекстовым поиском ( подключение к бд, добавление таблиц и колонок)
- •37) Поисковые выражение. Особенности их использования
- •39) Использование весов в частях шаблона
- •38) Использование оператора не в полнотекстовом поиске
- •40.0 Предыстория
- •40) Назначение и использование механизма odbc
- •42) Назначение и использование механизма ado
- •41) Назначение и использование механизма ole db
- •43) Назначение и использование механизма ado.Net
- •26) Установка уровня изоляции ( все которые касаются главных проблем, о старых не нужно. Показать где назначаются, как управляются)
1) Команды управления данными - insert, update, delete
DML – управления данными. Вставка строк данных – INSERT.
INSERT [ INTO] <имя базовой или временной таблицы> [(список полей)]
VALUES (список значений)| или <запрос>;
В отсутствующие поля значения вводятся по – умолчанию DEFAULT или NULL.
Если ограничения запрещают такие значения, то значения должны указываться явно. Эта же команда может быть использована для заполнения одной таблицы результатами запроса к другой таблице.
В командах INSERT можно использовать подзапросы.
Удаление данных – DELETE.
DELETE [FROM] <имя таблицы>[< условия>] ;
Эта команда осуществляет удаление строк-записей из указанной таблицы.
!!!При этом удаляется только целая запись, параметры поля в этой команде не доступны.
Допускается использование вложенных запросов. Чаще всего это необходимо, когда критерий базируется на другой таблице.
В команде DELETE допускаются соотнесенные подзапросы.
Изменение существующих данных в таблице – UPDATE.
UPDATE <имя таблицы> SET (список элементов: имя столбца ={выражение| DEFAULT| NULL} ) [<условия>];
В предложении SET могут использоваться выражения в списке того поля, которое необходимо изменить. ( В INSERT в списке VALUES выражения не допускаются.!!!)
!!! 1)Нельзя модифицировать несколько таблиц сразу.
2) Нельзя использовать префикс в именах полей.
В качестве значений списка SET могут использоваться значения NULL.
Мощным средством является использование подзапросов в команде UPDATE. При этом необходимо соблюдение следующих правил:
1) в предложении FROM любого подзапроса нельзя модифицировать таблицу, на которую ссылается основная команда;
2) может возникнуть проблема дублирования строк, полученных в результате вложенного подзапроса;
(в таблице могут быть заданы ограничения по уникальности, это выясняется с использованием предложения EXISTS )
2) Особенности применения команд insert, update, delete к представлениям
Представление VIEW – это именованная виртуальная таблица, содержание которой выбирается из других таблиц с помощью запросов.
При изменении значений в таблицах автоматически меняются значения представления.
Наличие имени у такой таблицы позволяет пользователю выполнять с ней операции аналогичные операциям с базовыми таблицами.
Рассмотрим таблицы, относящиеся к базовым, т.е. таким, которые содержат данные и постоянно находятся на устройствах хранения информации. Представления по сравнению с ними являются более гибкими средствами. Когда СУБД отыскивает в команде ссылку на представление, она отыскивает его определение, хранящееся в БД.
После этого происходит преобразование пользовательской команды в её эквивалент с учетом запроса. У пользователя возникает впечатление, что он работает с настоящей реально существующей таблицей.
В SQL существует понятие групповых представлений, т.е. имеющих предложение GROUP BY или основанных на других групповых представлениях.
Представления могут основываться на двух и более таблицах.
Существуют ограничения на модификацию представлений.
При создании представлений можно часть информации скрыть.
Для удаления представлений используется команда DROP VIEW <Name of view>;
Для удаления представления не требуется удалять все данные, потому что реально они в нем не содержатся.
Так как представления состоят из результатов запросов, то для их модификации должны быть модифицированы данные из базовых таблиц. Но модификация не должна воздействовать на запрос, она воздействует на значения в таблице.
Различия между модифицируемым представлением и представлением только для чтения существуют:
Первое - работает как базовое, является в основном средством скрытия части информации, средством защиты;
Второе - позволяет получать целый набор всевозможных запросов, которые можно повторять и использовать для других запросов.