Як створити уявлення в SQL Server. Створення уявлень за допомогою коду SQL. Створення уявлень у Management Studio

Уявлення

Подання - це іменовані запити на вибірку даних ( інструкції SELECTна мовою T-SQL), що зберігаються у базі даних. У запитах подання можна використовувати, як і таблиці, незалежно від складності їх інструкцій SELECT. Подібно до таблиць подання також складаються з полів і записів. Однак на відміну від таблиць вони не містять жодних даних (за винятком матеріалізованих (індексованих) уявлень).

Подання завжди ґрунтуються на таблицях і використовуються для отримання даних, що зберігаються в цих таблицях, у певних розрізах. Уявлення дозволяють досягти більш високої захищеності даних, а також надають проектувальнику засоби налаштування моделі користувача.

Механізм уявлень можна використовувати з кількох причин.

  • Він надає потужний та гнучкий механізм захисту, що дозволяє приховати деякі частини бази даних від певних користувачів. Користувач не матиме відомостей про існування будь-яких атрибутів або кортежів, які відсутні у доступних йому уявленнях. (Горизонтальне та вертикальне розбиття таблиць).
  • Він дозволяє організувати доступ користувачів до даних найбільш зручним для них чином, тому одні й ті самі дані в той самий час можуть розглядатися різними користувачамицілковито у різний спосіб. (зокрема перейменування атрибутів).
  • Він дозволяє спрощувати складні операціїіз базовими відносинами. Наприклад, якщо подання буде визначено на основі з'єднання двох відносин, то користувач зможе виконувати над ним прості унарні операції вибірки та проекції, які будуть автоматично перетворені засобами СУБД на еквівалентні операції з виконанням з'єднання базових відносин. Одною з найважливіших причинвикористання уявлень є прагнення спрощення багатотабличних запитів. Після визначення подання зі з'єднанням декількох таблиць можна буде використовувати найпростіші однотабличні запити до цього подання замість складних запитів з виконанням того ж багатотабличного з'єднання.

Всі ці приклади демонструють певний ступінь логічної незалежності від даних, що досягається за рахунок використання уявлень. Однак насправді уявлення дозволяють досягти і більше важливого типулогічної незалежності від даних, пов'язаної із захистом користувачів від реорганізацій концептуальної схеми Наприклад, якщо у відношенні буде додано новий атрибутКористувачі не будуть навіть підозрювати про його існування, поки визначення їх уявлень не включають цей атрибут. Якщо існуюче відношення реорганізовано або розбито на частини, то його подання може бути перевизначено так, щоб користувачі могли продовжувати працювати з даними в попередньому форматі.

Створення уявлень у Management Studio

В утиліті SQL Server Management Studio уявлення можна створювати, редагувати, виконувати та вставляти в інші запити. Оскільки уявлення є нічим іншим, як збереженою інструкцією SELECT, створення починається з проектування цієї інструкції. Інструкція SELECT, якщо вона є коректною, може бути вирізана та вставлена ​​у виставу практично з будь-якого інструменту. В утиліті Management Studio уявлення перераховані у своєму вузлі у кожній базі даних.

Команда «Створити виставу» у контекстному меню дозволить запустити конструктор запитів у режимі створення уявлень.

Конструктор запитів утиліти Management Studio здатний одночасно відображати багато панелей, вибраних на панелі інструментів.

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

Таблиці та інші подання можуть бути додані за допомогою перетягування їх на панель діаграми з вікна «Обозреватель об'єктів» або за допомогою команди «Додати таблицю» на панелі інструментів або контекстному меню.

Функція додавання похідних таблиць здатна додати в пропозицію FROM подання як джерело даних підзапит. Код SQL підзапиту можна ввести вручну на панелі SQL. Кнопка «Перевірити синтаксис SQL» дозволяє перевірити синтаксис введених інструкцій SQL. У той же час вона не перевіряє імена таблиць, стовпців та уявлень в інструкції SELECT.

Після створення подання його можна редагувати в Management Studio, виділяючи назву та вибираючи в контекстному меню команду "Проект".

Для тестування інструкції SELECT представлення в конструкторі запитів натисніть кнопку «Виконати код SQL» або натисніть клавішу.

Контекстне меню подання також містить команди управління його повнотекстової індексації та її перейменування. Властивості програми містять розширені параметри та роздільну здатність системи безпеки. Для видалення подання з бази даних достатньо виділити його, вибрати в контекстному меню команду "Видалити" або натиснути однойменну клавішу.

Створення уявлень за допомогою кодуSQL

Поданнями можна керувати в редакторі запитів, виконуючи сценарії SQL, які використовують команди мови DDL: CREATE, ALTER та DROP. Основний синтаксис створення уявлення наступний:

CREATE VIEW ім'я_подання

інструкція_SELECT

Наприклад, щоб створити представлення v_Customer, яке повертає список клієнтів із зазначенням міста проживання, програмним шляхом, у вікні запитів має бути виконана наступна команда.

CREATE VIEW.

SELECT dbo.Customer.IdCust, dbo.Customer.FName, dbo.Customer.LName, dbo.City.CityName

FROM dbo.Customer INNER JOIN

dbo.City ON dbo.Customer.IdCity = dbo.City.IdCity

Спроба створити уявлення, яке вже існує, викликає помилку. Коли подання створено, інструкцію SELECT можна легко відредагувати за допомогою команди ALTER:

ALTER ім'я_подання

змінена_інструкція_SELECT

Якщо зміна подання передбачає і зміну прав доступу на нього, краще видалити його і створити заново, оскільки видалення подання також призводить до видалення дозволів доступу, встановлених раніше.

Щоб видалити подання з бази даних, використовуйте команду DROP:

DROP VIEW ім'я_подання

ПропозиціяORDER BYта уявлення

Подання є джерелом даних для інших запитів і не підтримують сортування в собі. Наприклад, наступний код отримує дані з представлення v_Customer і впорядковує їх по полях LName і FName. Пропозиція ORDER BY не є частиною представлення v_Customer, а застосовується до неї за допомогою виклику інструкції SQL:

SELECT IdCust, FName, LName, CityName

FROM dbo.v_Customer

ORDER BY LName, FName

Виконання уявлень

Уявлення може бути виконано саме собою. Інструкція SELECT, на основі якої створено подання, може бути виконана, однак у цій формі, технічного боку, інструкція SQLне є уявленням. Подання може бути корисним лише як джерело даних у запиті.

Саме тому контекстне меню"Відкрити уявлення" утиліти Management Studio автоматично генерує простий запит, витягаючи з уявлення всі стовпці. Подання відображає лише результати. Проте включення інших панелей конструктора запитів дозволяє побачити сам запит, витягнутий з представлення.

Панель SQL відобразить подання у пропозиції FROM інструкції SELECT. Саме в такій формі на подання посилаються користувачі:

SELECT *

FROM v_Customer

Завдання для самостійної роботи: Створіть подання, що повертає список замовлень із зазначенням імені клієнта та кількості товарів у кожному замовленні. Таким чином, результат повинен включати такі атрибути: IdOrd, OrdDate, IdCust, FName, LName, Кількість видів товарів на замовлення.

Багато адміністратори-початківці та програмісти баз даних, та й просто системні адміністратори, які обслуговують якусь базу даних, не знають що таке подання чи VIEWS, і навіщо вони взагалі потрібні. Зараз ми спробуємо розібратися, що це таке.

Почнемо з невеликої теорії.

Що таке VIEWS?

VIEWS– уявлення, або наприклад у PostgreSQL вони називаються « Видами»(Тобто Вид), російські адміни часто називають їх завірюхами, тобто. одна вистава це юшка. Вона є запитом, що зберігається до бази даних, також її можна назвати віртуальна таблиця, але в цій таблиці дані не зберігаються, а зберігається тільки сам запит. Але, проте, до юшці можна звертатися як до звичайної таблиці і витягувати дані з неї.

Ми з Вами говоримо про бази даних, в яких використовується мова SQL, виходячи з цього, можна зробити висновок, що VIEWS можна створити на даною мовою. Це дуже поширений об'єкт у базі даних, тому у всіх СУБД є можливість створювати уявлення у графічний інтерфейсшляхом натискання кнопки « Створити уявлення» або « Створити новий вид », а також, звичайно, з використанням інструкції «CREATE VIEW».

Але перед тим як вчитися створювати юшки, поговоримо про те, навіщо вони потрібні і які переваги вони нам дадуть.

Навіщо потрібні уявлення?

Однією з основних переваг уявлень і те, що вони сильно спрощують взаємодію Космосу з даними у базі даних. Допустимо, Вам необхідно щоразу робити складну за своєю структурою вибірку, а як Ви знаєте, запит на вибірку може бути, ну просто дуже складний і цьому немає меж. І якщо не було б хуртовин, то Вам доводилося б щоразу запускати цей запит, або навіть його модифікувати, наприклад, для вставки умов. А оскільки ми маємо такі об'єкти як уявлення, нам цього робити не доведеться. Ми просто всього створимо одну юшку, і потім вже до неї звертатимемося за допомогою вже простих запитів, які також можна робити складними, якщо це необхідно. Наприклад, в'юшки також можна поєднувати з іншими таблицями або іншими уявленнями.

До уявлень можна звертатися і з додатків, наприклад, Вам потрібно вивести якийсь звіт, формування якого вимагає якихось розрахунків, це легко можна реалізувати шляхом написання необхідного запиту ( в якому і розраховуватимуться дані, наприклад, з різних таблиць) та вставці цього запиту у хребту. А потім уже звертатися до цієї юшки, наприклад за допомогою такого простого запитуяк:

SELECT * FROM TableName

Як створити уявлення VIEWS?

Тепер давайте поговоримо про те, як створювати ці самі юшки. По-перше, відразу скажу, що для цього необхідні знання SQL ( для побудови складних запитів). По-друге, Ви попередньо повинні визначитися, що Вам необхідно вивести в результаті того чи іншого запиту. Розглядати процес створення уявлення шляхом натискання кнопок ми не будемо, то це досить просто. Ми розглянемо створення VIEWS із використанням мови SQL (хоч і це теж просто).

Наприклад, у PostgreSQL запит створення подання виглядатиме так:

CREATE VIEW MyView AS SELECT id, name, org FROM work.TableName

  • CREATE VIEW – команда створення уявлення;
  • MyView – назва Вашої майбутньої юшки;
  • SELECT id, name, org FROM work.TableName – запит на вибірку.

Тут ми використовували простий запит на вибірку, Ви можете писати будь-який запит, навіть з об'єднанням декількох таблиць і умов до них.

Повний синтаксис команди CREATE VIEW (у PostgreSQL) виглядає так:

CREATE VIEW view_name [(column_list)] AS select_statement CHECK OPTION]

Після того, як Ви створили виставу, Ви можете до нього звертатися. А дані, які виводитиме юшка, будуть змінюватися залежно від змін даних у вихідних таблицях, оскільки дані у юшці формуються при зверненні до цього подання. Виходячи з цього, можна зробити висновок, що дані, які виводить юшка, будуть завжди актуальні.

У мене все, сподіваюся, тепер у Вас є уявлення про те, що таке VIEWS, поки що!

Останнє оновлення: 14.08.2017

Подання або Views представляють віртуальні таблиці. Але на відміну від звичайних стандартних таблицьу базі даних подання містять запити, які динамічно витягують використовувані дані.

Уявлення дають нам низку переваг. Вони полегшують комплексні SQL-операції. Вони захищають дані, оскільки уявлення можуть дати доступом до частини таблиці, а чи не до таблиці. Подання також дозволяють повертати відформатовані значення з таблиць у потрібній та зручній формі.

Для створення подання використовується команда CREATE VIEW, яка має таку форму:

CREATE VIEW назва_подання [(стовпець_1, стовпець_2, ....)] AS вираз_SELECT

Наприклад, нехай у нас є три пов'язані таблиці:

CREATE TABLE Products (Id INT IDENTITY PRIMARY KEY, ProductName NVARCHAR(30) NOT NULL, Manufacturer NVARCHAR(20) NOT NULL, ProductCount INT DEFAULT 0, Price MONEY NOT NULL); CREATE TABLE Customers (Id INT IDENTITY PRIMARY KEY, FirstName NVARCHAR(30) NOT NULL); CREATE TABLE Orders (Id INT IDENTITY PRIMARY KEY, ProductId INT NOT NULL REFERENCES Products(Id) ON DELETE CASCADE, CustomerId INT NOT NULL REFERENCES Customers(Id) ON DELETE CASCADE, CreatedAt DATE NO );

Тепер додамо до бази даних, у якій містяться дані таблиці, таке подання:

CREATE VIEW OrdersProductsCustomers AS SELECT Orders.CreatedAt AS OrderDate, Customers.FirstName AS Customer, Products.ProductName As Product FROM Orders INNER JOIN Products ON Orders.ProductId = Products.Id INNER JOIN CustomersON

Тобто це подання фактично повертатиме зведені дані з трьох таблиць. І після його створення ми зможемо його побачити у вузлі Views у вибраної бази даних у SQL Server Management Studio:

Тепер використовуємо створене вище подання для отримання даних:

SELECT * FROM OrdersProductsCustomers

Під час створення уявлень слід враховувати, що уявлення, як і таблиці, повинні мати унікальні імена у межах тієї ж бази даних.

Уявлення може мати трохи більше 1024 стовпців і можуть звертати лише до 256 таблицям.

Також можна створювати уявлення на основі інших уявлень. Такі уявлення ще називають вкладеними (nested views). Однак рівень вкладеності не може бути більше 32-х.

Команда SELECT , що використовується у поданні, не може включати вирази INTO або ORDER BY (за винятком тих випадків, коли також застосовується вираз TOP або OFFSET ). Якщо ж необхідне сортування даних у поданні, то вираз ORDER BY застосовується у команді SELECT, яка отримує дані з подання.

Також при створенні вистави можна визначити набір його стовпців:

CREATE VIEW OrdersProductsCustomers2 (OrderDate, Customer,Product) AS SELECT Orders.CreatedAt, Customers.FirstName, Products.ProductName FROM Orders INNER JOIN Products ON Products.

Зміна уявлення

Для зміни подання використовується команда ALTER VIEW. Ця команда має практично той же синтаксис, то і CREATE VIEW :

ALTER VIEW назва_подання [(стовпець_1, стовпець_2, ....)] AS вираз_SELECT

Наприклад, змінимо вище створене уявлення OrdersProductsCustomers:

ALTER VIEW OrdersProductsCustomers AS SELECT Orders.CreatedAt AS OrderDate, Customers.FirstName AS Customer, Products.ProductName AS Product, Products.Manufacturer AS Manufacturer FROM Orders INNER JOIN Products ON Orders.ProductId = ProductId = ProductId Customers .Id

Видалення уявлення

Для видалення подання викликається команда DROP VIEW:

DROP VIEW OrdersProductsCustomers

Також варто відзначити, що при видаленні таблиць слід видалити і уявлення, які використовують ці таблиці.

CREATE VIEW. Цей метод кращий за інших, якщо існує ймовірність, що ви будете створювати інші уявлення в майбутньому, оскільки ви можете поміщати оператори T-SQL у файл сценарію і потім редагувати і використовувати цей файл знову і знову. SQL Server Enterprise MАnager підтримує графічне середовище, в якій ви можете створювати уявлення. І нарешті, ви можете використовувати майстер створення уявлень Create View Wizard, коли вам потрібна допомога, щоб пройти через процес створення уявлення, що може виявитися корисним як для новачка, так і фахівця.
Використання T-SQLдля створення уявлення

Створення уявлень з допомогою T-SQL- Досить простий процес: ви запускаєте оператор CREATE VIEWдля створення подання за допомогою ISQL, OSQL або Query Analyzer. Як уже говорилося, використання операторів T-SQL у сценарії краще, оскільки ці оператори можна модифікувати та повторно використовувати. (Вам слід також зберігати визначення вашої бази даних у сценаріях у разі, якщо вам потрібно відтворити вашу базу даних.)

Оператор CREATE VIEWмає наступний синтаксис:

CREATE VIEW имя_представления [(колонка, колонка...)] AS ваш оператор SELECT

Створюючи виставу, ви можете активізувати два засоби, які змінюють поведінку подання. Для активізації цих коштів потрібно включити до оператор T-SQLключові слова WITH ENCRYPTION та/або WITH CHECK OPTION . Розглянемо ці кошти докладніше.

Ключове слово WITH ENCRYPTION вказує, що визначення подання (оператор SELECT , який визначає подання) має шифруватися. SQL Server використовує для шифрування операторів SQLтой самий метод, що й у паролів. Цей метод безпеки може бути корисним, якщо ви не хочете, щоб певні класи користувачів знали, до яких таблиць здійснюється доступ.

Ключове слово WITH CHECK OPTION вказує на те, що операції модифікування даних, що застосовуються до подання, повинні відповідати критеріям, що містяться в операторі SELECT . Наприклад, можна заборонити операцію модифікування даних, що застосовується до подання для створення рядка таблиці, яка не видно всередині цього подання. Припустимо, що визначається подання для вибірки інформації всіх службовців фінансового відділу (finAnce department ). Якщо ключове слово WITH CHECK OPTION не включено в оператор, то ви можете змінити значення finAnce колонки department на значення, що вказує інший відділ. Але якщо це ключове слово вказано, то ця зміна не буде допускатися, оскільки зміна значення колонки department в будь-якому рядку зробить цей рядок недоступним з даного уявлення. Ключове слово WITH CHECK OPTION вказує, що ви не можете зробити будь-який рядок недоступним з подання, вносячи будь-яку зміну всередині цього подання.

Оператор SELECT можна змінювати для створення будь-якого потрібного уявлення. Його можна використовувати для вибірки підмножини колонок або підмножини рядків або для виконання будь-якої операції зв'язування (join). У наступних розділах ви дізнаєтесь, як використовувати T-SQL для створення різних типівуявлень.

Підмножина колонок

Подання, що містить підмножину колонок, може виявитися корисним, якщо вам потрібно забезпечити безпеку таблиці, яка має бути доступна користувачам лише частково. Розглянемо приклад. Припустимо, що база даних співробітників підприємства містить таблицю з ім'ям Employee (Службовці) з колонками даних (рис. 18.1).


Мал. 18.1.

Більшість цих даних є критично важливими і повинні бути доступні для перегляду тільки певним співробітникам. Однак, може бути корисним дозволити всім користувачам перегляд деяких з цих даних. Для цього можна створити уявлення, яке дозволяє всім користувачам доступ лише до певних даних. Це подання можна також використовувати, щоб уникнути дублювання данихпро співробітників інших таблицях даних.

Щоб створити уявлення по таблиці Employee, в якому є доступ тільки до колонок name (ім'я), phone (телефон) та office (кімната), використовуйте наступний оператор T-SQL:

CREATE VIEW emp_vw AS SELECT name, phone, office FROM Employee

Результуюче уявлення міститиме колонки (рис. 18.2). Хоча ці колонки також існують у базовій таблиці, користувачі, які мають доступ до даних через це уявлення, можуть бачити ці колонки тільки в цьому поданні. А оскільки подання може мати рівень безпеки, відмінний від базової таблиці подання, це подання можна надавати для доступу будь-якому користувачеві, у той час як таблиця, що утворює, залишиться захищеною. Іншими словами, ви можете обмежити доступ до таблиці Employee, дозволивши його, наприклад, тільки відділ кадрів, і можете надати всім користувачам доступ до цього подання.

SQL-Уявлення(SQL view) - це віртуальна таблиця, що складається з інших таблиць або уявлень. Подання немає своїх власних даних, а об'єднує дані з таблиць чи уявлень, які до нього входять. Уявлення створюються за допомогою операторів SELECT та мають безліч застосувань:

    За допомогою їх можна приховувати від доступу окремі стовпці або рядки. Це механізм безпеки, який дозволяє користувачам звертатися до даних через подання, але не надаючи їм дозволів на безпосередній доступ до базових таблиць.

    Вони дозволяють відображати стовпці, що обчислюються, і приховувати складні SQL-оператори для спрощення та налаштування сприйняття інформації в базі даних кожним користувачем.

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

    1. Sql індекси

Індекс(англ. index) – об'єкт бази даних, створюваний з метою підвищення продуктивності пошуку даних. Таблиці у базі даних можуть мати велика кількістьрядків, які зберігаються у довільному порядку, та їх пошук за заданим критерієм шляхом послідовного перегляду таблиці рядок за рядком може тривати багато часу. Індекс формується із значень одного або кількох стовпців таблиці та покажчиків на відповідні рядки таблиці і, таким чином, дозволяє шукати рядки, які відповідають критерію пошуку. Прискорення роботи з використанням індексів досягається насамперед рахунок того, що індекс має структуру, оптимізовану під пошук - наприклад, збалансованого дерева.

    1. Тригери

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

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

Припустимо, що у базі даних є таблиці, пов'язані через поле Stop. Name. Наприклад, це може бути таблиця зупинок міського транспорту та маршрутів. Розумно визначити тригер, який при кожній спробі видалити запис зупинки перевірить наявність маршрутів, що проходять через цю зупинку, і дозволить видалити цей запис лише за їх відсутності.

Тригери не набирають параметрів і не повертають значень. Вони виконуються неявно, тобто тригер запускається лише за спробі зміни даних.

    1. Збережені процедури

Зберігається процедура - це послідовність компілованих операторів Transact-SQL, що зберігаються в системної базиданих SQL Server. Збережені процедури попередньо відкомпільовані, тому ефективність виконання вище, ніж у звичайних запитів. Збережені процедури працюють безпосередньо на сервері і добре вкладаються в модель клієнт-сервер.

Існує два види збережених процедур: системні та користувальницькі.

Системні процедури, що зберігаються призначені для отримання інформації із системних таблиць та виконання різних службових операцій та особливо корисні при адмініструванні бази даних. Їхні імена починаються з sp_ (stored procedure).

Користувальницькі процедури, що зберігаються створюються безпосередньо розробниками чи адміністраторами бази даних.

Корисність процедур, що зберігаються, визначається в першу чергу високою (порівняно зі звичайними T-SQL запитами) швидкістю їх виконання. Крім того, вони є засобом систематизації операцій, що часто виконуються. При виконанні вперше процедури, що зберігається, можна виділити ряд етапів.

    Процедура розбивається на окремі компонентилексичним аналізатором виразів.

    Компоненти, що посилаються на об'єкти БД (таблиці, індекси, уявлення тощо), зіставляються з цими об'єктами з попередньою перевіркою їхнього існування. Цей процес має назву развирішення посилань.

    У системній таблиці syscomments зберігається початковий текстпроцедури, а в таблиці sysobjects - її назва.

    Створюється попередній планвиконання запиту. Цей попередній план називається нормалізованим планомабо дерево запит і зберігається в системній таблиці sysprocedures.

    При першому виконанні процедури, що зберігається, дерево запиту зчитується і остаточно оптимізується. Виконується раніше створений план процедури.

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

Використання процедур, що зберігаються, мають ще ряд додаткових переваг.

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

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

3. Збережені процедури можуть приймати аргументи під час запуску та повертати значення (у вигляді результуючих наборів даних).

4. Записи, що зберігаються, можуть запускатися за розкладом (в режимі автоматичного виконання), що задається при запуску SQL Server.

5. Збережені процедури використовуються для отримання або зміни даних у будь-який час.

6. Збережені процедури, на відміну тригерів, викликаються явно. Тобто при безпосередньому зверненні до процедури із програми, сценарію, пакету чи завдання.

Збережені процедури - потужний засібобробки даних Системні процедури, що зберігаються, грають дуже важливу рольв адмініструванні та підтримці бази даних. Користувацькі процедури, що зберігаються, застосовуються при вирішенні практично будь-яких завдань. Крім того, користувач може отримати право виконання процедури, що зберігається, навіть якщо він не має права доступу до об'єктів, до яких звертається процедура.