
SQL Server
Создаю БД — varjupaik_baas, имя таблицы — loomad и имена полей в таблице —loomID, loom, nimi, sugu, vanus:

Заполняю таблицу:

В поле sugu добавляю ограничение на вводимые данные *mees/naine:
Можно указать только ‘mees’ или ‘naine’.
sugu NVARCHAR(10) CHECK (sugu IN ('mees', 'naine')),
Создаю нового пользователя — Omanik(владелец приюта), пароль — 987456:


При помощи команды GRANT назначаю пользователю права — Omanik может добавлять записи и удалять записи в таблице Loomad
Права на таблицу loomad

Разрешаю пользователю создавать новые таблицы и изменять их структуру:

Добавление (INSERT
), удаление (DELETE
), создание таблиц (CREATE TABLE
), изменение структуры (ALTER
)
Проверяю назначенные пользователю права и то, что ему не разрешено при помощи составленных процедур.
CREATE PROCEDURE sp_NahtavadOigused
AS
BEGIN
SELECT
USER_NAME(grantee_principal_id) AS kasutaja,
permission_name AS oigus,
state_desc AS oiguse_tyyp,
OBJECT_NAME(major_id) AS objekt
FROM sys.database_permissions
WHERE USER_NAME(grantee_principal_id) = 'Omanik';
END;

localhost/phpMyAdmin
Создаём базу и таблицу в XAMPP:


Заполняю таблицу данными через SQL запрос:
INSERT INTO loomad (loom, nimi, sugu, vanus) VALUES
('koer', 'Rex', 'mees', 5),
('kass', 'Mura', 'naine', 4),
('jänes', 'Lari', 'mees', 3),
('papagoi', 'Tamara', 'naine', 2);

Создаю пользователя Omanik(владелец приюта), пароль — 987456:

При помощи команды GRANT назначаю пользователю права
Omanik может добавлять записи и удалять записи в таблице Loomad:

Создание и изменение таблиц:

Проверяю назначенные пользователю права и то, что ему не разрешено, создаю процедуру:


Запускаю процедуру и вижу Omanik может добавлять записи и удалять записи в таблице Loomad:
