- •1. Введение в предмет.
- •1.1 Данные и информация.
- •1.2 Предметная область.
- •1.3 Понятие и сущность.
- •1.4 Концептуальная модель объекта.
- •1.5 Связь или отношение.
- •1.6 Логическая модель базы данных.
- •1.7 Физическая модель базы данных.
- •1.8 Введение в работу с базами данных на платформе Microsoft sql Server.
- •1.8.1 Платформа Microsoft sql Server.
- •1.8.2 Среда sql Server Management Studio.
- •2. Основные понятия баз данных.
- •2.3 Типы данных ms sql Server.
- •2.3.1 Типы char и varchar.
- •2.3.2 Типы данных nchar и nvarchar.
- •2.3.3 Типы точных числовых данных.
- •2.3.4 Тип данных даты и времени.
- •2.3.5 Типы данных Decimal, Float и Real.
- •2.3.6 Тип денежных данных.
- •2.3.7 Типы binary и varbinary.
- •2.3.8 Типы данных больших значений.
- •2.4 Индексы.
- •2.4.1 Простой индекс.
- •2.4.2 Уникальный индекс.
- •2.4.3 Первичный ключ.
- •2.4.4 Уточнение определения индексов для ms sql Server.
- •2.4.4.1 Создание кластеризованного индекса.
- •2.4.4.2 Создание некластеризованных индексов.
- •2.5 Ограничения (Constraints).
- •2.5.1 Ограничение первичного ключа (Primary key constraints).
- •2.5.2 Создание или изменение ограничения primary key.
- •2.5.2.1 Свойство identity.
- •2.5.2.2 Глобальные уникальные идентификаторы.
- •2.6 Отношения между таблицами.
- •2.7 Нормализация данных.
- •2.7.1 Функциональные зависимости.
- •2.7.2 Первая нормальная форма таблицы.
- •2.7.3 Вторая нормальная форма таблицы.
- •2.7.4 Третья нормальная форма таблицы.
- •2.8 Ограничение foreign key.
- •2.8.1 Ведение ссылочной целостности.
- •2.8.2 Диалоговое окно "Связи внешнего ключа".
- •2.9 Ограничение unique.
- •2.9.1 Создание ограничения уникальности визуальными средствами.
- •2.9.2 Изменение ограничения уникальности.
- •2.10 Проверочные ограничения check.
- •2.11 Значения по умолчанию (Default).
- •3. Диаграммы базы данных.
- •3.1 Конструктор баз данных.
- •3.1.1 Таблицы и столбцы в диаграмме базы данных.
- •3.2 Редактирование диаграммы.
- •4. Основы Transact-sql.
- •4.1 Введение в sql.
- •4.1.1 Особенности выполнения инструкций Transact-sql.
- •4.2 Запросы.
- •4.2.2 Синтаксис инструкции select.
- •4.2.2.1 Предложение select.
- •4.2.2.2 Предложение select_list.
- •4.2.2.3 Предложение into.
- •4.2.2.4 Предложение from.
- •4.2.2.5 Предложение where.
- •4.2.2.6 Предложение group by.
- •4.2.2.7 Предложение having.
- •4.2.2.8 Предложение order by.
- •4.3 Ввод данных.
- •4.4 Обновление или изменение данных.
- •4.5 Удаление данных.
- •4.6 Представления.
- •4.6.1 Сравнительные характеристики запросов и представлений.
- •4.6.2 Типы представлений.
- •4.6.2.1 Стандартные представления.
- •4.6.2.2 Индексированные представления.
- •4.6.3 Создание представлений.
- •4.6.3.1 Обновляемые представления.
- •4.7.5 Настройка разрешений на объекты базы данных.
- •4.7.5.3 Создание пользователя в базе данных.
- •4.7.5.4 Инструкция grant.
- •4.7.6 Удаление объектов базы данных.
4.7.5.4 Инструкция grant.
Будучи администратором, можно выполнять инструкцию SELECT из таблицы Products и представления vw_Names, а также выполнять процедуру pr_Names; однако Mary всего этого не может. Чтобы предоставить Mary необходимые разрешения, воспользуйтесь инструкцией GRANT.
Инструкция GRANT предоставляет разрешения на выполнение инструкций EXECUTE для хранимой процедуры, инструкций SELECT, INSERT, UPDATE и DELETE, чтобы получить доступ к данным и изменять их. Инструкция GRANT также используется для других разрешений, например для разрешений на создание таблиц.
1. Выполним следующую инструкцию, чтобы предоставить Mary разрешение на EXECUTE для хранимой процедуры pr_Names.
GRANT EXECUTE ON pr_Names TO Mary;
GO
В данном сценарии Mary имеет доступ только к таблице Products посредством хранимой процедуры. Если Mary нужно выполнять инструкцию SELECT к представлению, нужно выполнить инструкцию GRANT SELECT ON vw_Names TO Mary
Чтобы удалить доступ к объектам базы данных, воспользуйтесь инструкцией REVOKE.
4.7.6 Удаление объектов базы данных.
Чтобы удалить все записи, созданные в предыдущих шагах данного раздела, достаточно удалить базу данных. Тем не менее, в данном разделе будет показано, как аннулировать любое действие, совершенное при выполнении предыдущих действий.
1. Перед удалением объектов необходимо убедиться, что используется нужная база данных:
USE TestData;
GO
2. С помощью инструкции REVOKE удаляется разрешение на выполнение, предоставленное Mary на хранимую процедуру:
REVOKE EXECUTE ON pr_Names FROM Mary;
GO
3. С помощью инструкции DROP удаляется разрешение, предоставленное Mary для доступа к базе данных TestData:
DROP USER Mary;
GO
4. С помощью инструкции DROP удаляется разрешение, предоставленное Mary для доступа к экземпляру SQL Server:
DROP LOGIN [<computer_name>\Mary];
GO
5. С помощью инструкции DROP удаляется хранимая процедура pr_Names:
DROP PROC pr_Names;
GO
6. С помощью инструкции DROP удаляется представление vw_Names:
DROP View vw_Names;
GO
7. С помощью инструкции DELETE удаляются все строки таблицы Products:
DELETE FROM Products;
GO
8. С помощью инструкции DROP удаляется таблица Products:
DROP Table Products;
GO
9. Базу данных TestData невозможно удалить во время нахождения в ней; поэтому сначала требуется переключить контекст на другую базу данных и только после этого с помощью инструкции DROP удалить базу данных TestData:
USE MASTER;
GO DROP DATABASE TestData;
GO