Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Shpory_Sem.docx
Скачиваний:
3
Добавлен:
10.09.2019
Размер:
427.82 Кб
Скачать

32. Як виконати запити до баз даних засобами мови sql (за допомогою оператора select)?

Основной инструкцией языка SQL, всегда содержащейся в запросе, является команда SELECT [2].

В простейшей форме эта команда занимается поиском информации в таблице. Вона має наступний формат:

SELECT field 1, field 2, …

FROM Table ;

Здесь field 1, field 2,… – список столбцов таблицы Table , которые должны быть представлены в результате запроса.

Для получения всей таблицы вместо списка столбцов необходимо поставить символ «*» (звездочка).

33. Як внести зміни до баз даних засобами мови SQL (за допомогою операторів INSERT, DELETE, UPDATE

У одній базі даних можуть міститися як первинні дані, так і дані-копії. Додаток-клієнт, що працює зі своєї СУБД, може вносити зміни безпосередньо (операторами INSERT, DELETE, UPDATE) тільки в первинні дані. Для зміни копії даних призначений механізм асинхронного виклику процедур. Для роботи цього механізму в декількох базах даних створюються процедури з однаковим ім'ям і параметрами, але, можливо, з різним текстом. Мова керування даними DCL.

Дозволяє працювати з правами користувачів на об’єкти в базі даних.

Мова SQL дозволяє присвоїти групі користувачів певні права на деякий об’єкт. Права можуть бути такими:

SELECT дозволяє запитувати дані

INSERT дозволяє додавати нові рядки

DELETE дозволяє видаляти рядки

UPDATE дозволяє змінювати існуюючі рядки

REFERENCES це право потрібне лише в тому випадку, коли користувач намагається модифікувати таблицю, що має обмеження цілостності посилань, які зсилаються на стовпці іншої таблиці. Такий користувач повинен мати право REFERENCES на стовпці, що використовуються з обмеженнями.

Права присвоюються:

GRANT SELECT ON Student TO PUBLIC

GRANT SELECT, INSERT ON Student TO Sveta, Lena

Права UPDATE та REFERENCES можуть поширюватися на окремі стовпці.

GRANT UPDATE (Raiting, Credit) ON Student TO Sveta

Оператор INSERT.

За допомогою оператора INSERT можна вставити дані в певне місце в базі даних.

Insert into Students_vipuskniki

Values (1, ‘Sveta Fiyalka’, ‘dcss’, 95)

Оператор DELETE.

DELETE FROM Student WHERE Student.Rating<61

Оператор UPDATE.

За допомогою цього оператора можна змінювати значення в існуючих рядках бази даних:UPDATE Employee SET Salary+100

34. Як забезпечити безпеку баз даних засобами мови SQL (за допомогою операторів GRANT, REVOKE)?

У стандарті SQL визначені два оператори: GRANT і REVOKE відповідно надання та скасування привілеїв. Оператор надання привілеїв має наступний формат:

GRANT {<список дій | ALL PRIVILEGES}

ON <імя_об'екта> ТО (<ім'я користувача>] PUBLIC} [WITH GRANT OPTION]

Тут список дій визначає набір дій з общедопустімого переліку дій над об'єктом даного типу.

Параметр ALL PRIVILEGES вказує, що дозволені всі дії з допустимих для об'єктів даного типу.

<Імя_обьекта> - задає ім'я конкретного об'єкта: таблиці, подання, збереженої процедури, тригера.

<Ім'я користувача> або PUBLIC визначає, кому надаються дані привілеї.

Параметр WITH GRANT OPTION є необов'язковим і визначає режим, при якому передаються не тільки права на зазначені дії, а й право передавати ці права іншим користувачам. Передавати права в цьому випадку користувач може тільки в рамках дозволених йому дій.

Для скасування раніше призначених привілеїв в стандарті SQL визначений оператор REVOKE. Оператор скасування привілеїв має наступний синтаксис:

REVOKE {<список операцій | ALL PRIVILEGES} ON <імя_об'екта>

FROM {<список користувачів | PUBLIC} {CASCADE | RESTRICT}

Параметри CASCADE або RESTRICT визначають, яким чином повинна здійснюватися скасування привілеїв. Параметр CASCADE скасовує привілеї не тільки користувача, який безпосередньо згадувався в операторі GRANT при наданні йому привілеїв, але і всім користувачам, яким цей користувач присвоїв привілеї, скориставшись параметром WITH GRANT OPTION.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]