2.2 Создание запросов со сложными условиями отбора
ЗАПРОС 7. Запрос по таблице товары по полям «Наименование», «Тип товара», «Цена за единицу» (рисунок 13).
Условие отбора для поля Наименование: Between 'к' And 'п' (Вывести все товары, наименования которых находятся в диапазоне с "к" до "п").
Рисунок 13 – Результат выполнения седьмого запроса
ЗАПРОС 8. Запрос по таблице «Товары» (Наименование, Цена за единицу, Тип товара) (рисунок 14).
Условие отбора для поля «Цена за единицу»: >700. В строке ИЛИ для поля «Наименование»: Between 'к' And 'п' .В строке «Сортировка» для поля «Наименование»: по возрастанию.
Рисунок 14 – Результат выполнения восьмого запроса
ЗАПРОС 9. Запрос по таблице «Справочник_производителей» (Производитель, Телефон фирмы) с условием отбора для поля «Производитель»: 'Ч%' и новым условием отбора для поля «Производитель»: < 'Ч%' (рисунок 15).
Рисунок 15 – Результат выполнения запроса 9
ЗАПРОС 10. Запрос по таблице «Справочник производителей» (Наименование, Дата создания фирмы) Условие отбора для поля «Дата создания фирмы»: > '12-05-2002' (рисунок 16).
Измененное условие отбора для поля «Дата создания фирмы»: < '12-05-2002'
Измененное условие отбора для поля «Дата создания фирмы»: Between '12-05-2002' And GetDate() , где функция GetDate() - возвращает значение текущей даты.
Рисунок 16 – Результат выполнения запроса 10
2.3 Создание пользователей на доступ к серверу через утилиту Microsoft sql Server Management Studio.
Через раздел Security создаем новых пользователей БД: adm и piers и настраиваем роли БД для этих пользователей.
Перечень ролей БД:
Public – минимальные права доступа к БД (на просмотр)
Db_owner – может выполнять любые действия с БД
Db_accessadmin – добавляет и удаляет пользователей БД
Db_sequrityadmin – управляет ролями в Бди разрешениями на запуск команд и работу с объектами БД
Db_ddladmin – добавляет, изменяет и удаляет объекты БД
Db_backupoperator – осуществляет резервное копирования БД
Db_datareader – может просматривать все данные в каждой таблице в БД
Db_datawriter - может добавлять, удалять и изменять данные в каждой таблице в БД
Db_denydatareader – запрет на просмотр всех данных в каждой таблице в БД
Db_denydatawriter - запрет на добавление, удаление и изменение всех данных в каждой таблице в БД
Рисунок 17 – Создание учетной записи adm через раздел security
2.4 Создание ролей программно.
Добавление в БД ролей библиотекаря и читателя:
USE DB_Storage --сделать текущей БД DB_Storage
EXEC sp_addrole 'LIBRAR'
USE DB_Storage --сделать текущей БД DB_Storage
EXEC sp_addrole 'READER'
Назначение привилегий для ролей библиотекаря и читателя:
GRANT DELETE, INSERT, UPDATE, SELECT ON Товары TO LIBRAR
GRANT DELETE, INSERT, UPDATE, SELECT ON Справочник_производителей TO LIBRAR
GRANT SELECT ON Товары TO READER
GRANT SELECT ON Справочник_производителей TO READER
Создание библиотекаря Ivanov_Lib и присвоения ему роли:
EXEC sp_addlogin 'Ivanov_Lib','Ivanov', 'DB_Storage'
use DB_Storage
EXEC sp_adduser 'Ivanov_Lib','Ivanov_Lib'
EXEC sp_addrolemember 'LIBRAR', 'Ivanov_Lib'
Создание читателя Petrov_Read и присвоения роли:
EXEC sp_addlogin 'Petrov_Read','Petrov', 'DB_Storage'
use DB_Storage
EXEC sp_adduser 'Petrov_Read','Petrov_Read'
EXEC sp_addrolemember 'READER', 'Petrov_Read'
Удаление привилегии у библиотекаря на удаление данных из таблицы Товары:
REVOKE DELETE ON Товары FROM LIBRAR
Изымание роли у пользователя Petrov:
use DB_Storage
EXEC sp_droprolemember 'READER', 'Petrov_Read'
Заключение
В результате проделанной работы в среде SQL Server 2005 была создана база данных «DB_Storage». В ходе работы были созданы таблицы «Товары» и «Справочник_производителей», заполнены данными, определены ключевые поля и созданы связи между таблицами. Созданная база данных была связана с помощью драйвера ODBC со средой Microsoft Office Access, где были созданы формы и отчет по таблицам. В среде SQL Server 2005 были созданы простые и сложные запросы. В СУБД SQL Server 2005 были созданы и настроены роли пользователей: через раздел security и программно на языке SQL.