🗊Презентация Встроенный SQL. Хранимые процедуры. (Лекция 8)

Категория: Информатика
Нажмите для полного просмотра!
Встроенный SQL. Хранимые процедуры. (Лекция 8), слайд №1Встроенный SQL. Хранимые процедуры. (Лекция 8), слайд №2Встроенный SQL. Хранимые процедуры. (Лекция 8), слайд №3Встроенный SQL. Хранимые процедуры. (Лекция 8), слайд №4Встроенный SQL. Хранимые процедуры. (Лекция 8), слайд №5Встроенный SQL. Хранимые процедуры. (Лекция 8), слайд №6Встроенный SQL. Хранимые процедуры. (Лекция 8), слайд №7Встроенный SQL. Хранимые процедуры. (Лекция 8), слайд №8Встроенный SQL. Хранимые процедуры. (Лекция 8), слайд №9Встроенный SQL. Хранимые процедуры. (Лекция 8), слайд №10Встроенный SQL. Хранимые процедуры. (Лекция 8), слайд №11Встроенный SQL. Хранимые процедуры. (Лекция 8), слайд №12Встроенный SQL. Хранимые процедуры. (Лекция 8), слайд №13Встроенный SQL. Хранимые процедуры. (Лекция 8), слайд №14Встроенный SQL. Хранимые процедуры. (Лекция 8), слайд №15Встроенный SQL. Хранимые процедуры. (Лекция 8), слайд №16Встроенный SQL. Хранимые процедуры. (Лекция 8), слайд №17Встроенный SQL. Хранимые процедуры. (Лекция 8), слайд №18Встроенный SQL. Хранимые процедуры. (Лекция 8), слайд №19Встроенный SQL. Хранимые процедуры. (Лекция 8), слайд №20Встроенный SQL. Хранимые процедуры. (Лекция 8), слайд №21

Содержание

Вы можете ознакомиться и скачать презентацию на тему Встроенный SQL. Хранимые процедуры. (Лекция 8). Доклад-сообщение содержит 21 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





Лекция №8
Встроенный SQL
каф. КИБЭВС
И.В. Горбунов
Описание слайда:
Лекция №8 Встроенный SQL каф. КИБЭВС И.В. Горбунов

Слайд 2






Хранимые процедуры
Описание слайда:
Хранимые процедуры

Слайд 3





Со стороны приложений, работающих с БД, хранимые процедуры (Stored Procedure) — это подпрограммы, которые выполняются на сервере. По отношению к БД — это объекты, которые создаются и хранятся в БД.
Со стороны приложений, работающих с БД, хранимые процедуры (Stored Procedure) — это подпрограммы, которые выполняются на сервере. По отношению к БД — это объекты, которые создаются и хранятся в БД.
Они могут быть вызваны из клиентских приложений. При этом одна процедура может быть использована в любом количестве клиентских приложений, что позволяет существенно сэкономить трудозатраты на создание прикладного программного обеспечения и эффективно применять стратегию повторного использования кода.
Описание слайда:
Со стороны приложений, работающих с БД, хранимые процедуры (Stored Procedure) — это подпрограммы, которые выполняются на сервере. По отношению к БД — это объекты, которые создаются и хранятся в БД. Со стороны приложений, работающих с БД, хранимые процедуры (Stored Procedure) — это подпрограммы, которые выполняются на сервере. По отношению к БД — это объекты, которые создаются и хранятся в БД. Они могут быть вызваны из клиентских приложений. При этом одна процедура может быть использована в любом количестве клиентских приложений, что позволяет существенно сэкономить трудозатраты на создание прикладного программного обеспечения и эффективно применять стратегию повторного использования кода.

Слайд 4





Хранимые процедуры являются объектами БД. 
Хранимые процедуры являются объектами БД. 
Каждая хранимая процедура компилируется при первом выполнении, в процессе компиляции строится оптимальный план выполнения процедуры. 
Описание процедуры совместно с планом ее выполнения хранится в системных таблицах БД.
Описание слайда:
Хранимые процедуры являются объектами БД. Хранимые процедуры являются объектами БД. Каждая хранимая процедура компилируется при первом выполнении, в процессе компиляции строится оптимальный план выполнения процедуры. Описание процедуры совместно с планом ее выполнения хранится в системных таблицах БД.

Слайд 5





По умолчанию выполнить хранимую процедуру может только ее владелец, которым является владелец БД, и создатель хранимой процедуры. Однако владелец хранимой процедуры может делегировать права на ее запуск другим пользователям.
По умолчанию выполнить хранимую процедуру может только ее владелец, которым является владелец БД, и создатель хранимой процедуры. Однако владелец хранимой процедуры может делегировать права на ее запуск другим пользователям.
Описание слайда:
По умолчанию выполнить хранимую процедуру может только ее владелец, которым является владелец БД, и создатель хранимой процедуры. Однако владелец хранимой процедуры может делегировать права на ее запуск другим пользователям. По умолчанию выполнить хранимую процедуру может только ее владелец, которым является владелец БД, и создатель хранимой процедуры. Однако владелец хранимой процедуры может делегировать права на ее запуск другим пользователям.

Слайд 6





В MS SQL Server хранимая процедура создается оператором:
CREATE PROCEDURE] <имя_процедуры> [;<версия>]
[{@параметр1 тип_данных}
[VARYING] [= <значение_по_умолчанию>] [OUTPUT]]
[..параметрN..]
[ WITH
{ RECOMPILE | ENCRYPTION | RECOMPILE, ENCRYPTION}] [FOR REPLICATION]
В MS SQL Server хранимая процедура создается оператором:
CREATE PROCEDURE] <имя_процедуры> [;<версия>]
[{@параметр1 тип_данных}
[VARYING] [= <значение_по_умолчанию>] [OUTPUT]]
[..параметрN..]
[ WITH
{ RECOMPILE | ENCRYPTION | RECOMPILE, ENCRYPTION}] [FOR REPLICATION]
AS
Тело процедуры
Описание слайда:
В MS SQL Server хранимая процедура создается оператором: CREATE PROCEDURE] <имя_процедуры> [;<версия>] [{@параметр1 тип_данных} [VARYING] [= <значение_по_умолчанию>] [OUTPUT]] [..параметрN..] [ WITH { RECOMPILE | ENCRYPTION | RECOMPILE, ENCRYPTION}] [FOR REPLICATION] В MS SQL Server хранимая процедура создается оператором: CREATE PROCEDURE] <имя_процедуры> [;<версия>] [{@параметр1 тип_данных} [VARYING] [= <значение_по_умолчанию>] [OUTPUT]] [..параметрN..] [ WITH { RECOMPILE | ENCRYPTION | RECOMPILE, ENCRYPTION}] [FOR REPLICATION] AS Тело процедуры

Слайд 7





 VARYING - определяет заданное значение по умолчанию для определенного ранее параметра.
 VARYING - определяет заданное значение по умолчанию для определенного ранее параметра.
RECOMPILE определяет режим компиляции создаваемой хранимой процедуры. Если задано ключевое слово RECOMPILE, то процедура будет перекомпилироваться каждый раз, когда она будет вызываться на исполнение.
ENCRYPTION определяет режим, при котором исходный текст хранимой процедуры не сохраняется в БД. Такой режим применяется для сохранения авторского права на интеллектуальную продукцию, хранимую процедуру.
Описание слайда:
 VARYING - определяет заданное значение по умолчанию для определенного ранее параметра.  VARYING - определяет заданное значение по умолчанию для определенного ранее параметра. RECOMPILE определяет режим компиляции создаваемой хранимой процедуры. Если задано ключевое слово RECOMPILE, то процедура будет перекомпилироваться каждый раз, когда она будет вызываться на исполнение. ENCRYPTION определяет режим, при котором исходный текст хранимой процедуры не сохраняется в БД. Такой режим применяется для сохранения авторского права на интеллектуальную продукцию, хранимую процедуру.

Слайд 8





Каждая хранимая процедура является объектом БД. Она имеет уникальное имя и уникальный внутренний номер в системном каталоге. При изменении текста хранимой процедуры мы должны сначала уничтожить данную процедуру как объект, хранимый в БД, и только после этого записать на ее место новую. Следует отметить, что при удалении хранимой процедуры удаляются одновременно все ее версии, нельзя удалить только одну версию хранимой процедуры.
Каждая хранимая процедура является объектом БД. Она имеет уникальное имя и уникальный внутренний номер в системном каталоге. При изменении текста хранимой процедуры мы должны сначала уничтожить данную процедуру как объект, хранимый в БД, и только после этого записать на ее место новую. Следует отметить, что при удалении хранимой процедуры удаляются одновременно все ее версии, нельзя удалить только одну версию хранимой процедуры.
Описание слайда:
Каждая хранимая процедура является объектом БД. Она имеет уникальное имя и уникальный внутренний номер в системном каталоге. При изменении текста хранимой процедуры мы должны сначала уничтожить данную процедуру как объект, хранимый в БД, и только после этого записать на ее место новую. Следует отметить, что при удалении хранимой процедуры удаляются одновременно все ее версии, нельзя удалить только одну версию хранимой процедуры. Каждая хранимая процедура является объектом БД. Она имеет уникальное имя и уникальный внутренний номер в системном каталоге. При изменении текста хранимой процедуры мы должны сначала уничтожить данную процедуру как объект, хранимый в БД, и только после этого записать на ее место новую. Следует отметить, что при удалении хранимой процедуры удаляются одновременно все ее версии, нельзя удалить только одну версию хранимой процедуры.

Слайд 9





Хранимые процедуры допускают наличие нескольких выходных параметров. Для этого каждый выходной параметр должен после задания своего типа данных иметь дополнительное ключевое слово OUTPUT.
Хранимые процедуры допускают наличие нескольких выходных параметров. Для этого каждый выходной параметр должен после задания своего типа данных иметь дополнительное ключевое слово OUTPUT.
Описание слайда:
Хранимые процедуры допускают наличие нескольких выходных параметров. Для этого каждый выходной параметр должен после задания своего типа данных иметь дополнительное ключевое слово OUTPUT. Хранимые процедуры допускают наличие нескольких выходных параметров. Для этого каждый выходной параметр должен после задания своего типа данных иметь дополнительное ключевое слово OUTPUT.

Слайд 10





Эффективность хранимых процедур:
Эффективность хранимых процедур:
Если рассмотреть этапы выполнения одинакового текста части приложения, содержащего SQL-операторы, самостоятельно на клиенте и в качестве хранимой процедуры, то можно отметить, что на клиенте выполняются все 5 этапов выполнения SQL-операторов, а хранимая процедура может храниться в БД в уже скомпилированном виде, и ее исполнение займет гораздо меньше времени.
Описание слайда:
Эффективность хранимых процедур: Эффективность хранимых процедур: Если рассмотреть этапы выполнения одинакового текста части приложения, содержащего SQL-операторы, самостоятельно на клиенте и в качестве хранимой процедуры, то можно отметить, что на клиенте выполняются все 5 этапов выполнения SQL-операторов, а хранимая процедура может храниться в БД в уже скомпилированном виде, и ее исполнение займет гораздо меньше времени.

Слайд 11


Встроенный SQL. Хранимые процедуры. (Лекция 8), слайд №11
Описание слайда:

Слайд 12





Эффективность хранимых процедур:
Эффективность хранимых процедур:
Хранимые процедуры, как уже упоминалось, могут быть использованы несколькими приложениями, а встроенные операторы SQL должны быть включены в каждое приложение повторно.
Описание слайда:
Эффективность хранимых процедур: Эффективность хранимых процедур: Хранимые процедуры, как уже упоминалось, могут быть использованы несколькими приложениями, а встроенные операторы SQL должны быть включены в каждое приложение повторно.

Слайд 13


Встроенный SQL. Хранимые процедуры. (Лекция 8), слайд №13
Описание слайда:

Слайд 14






Триггеры
Описание слайда:
Триггеры

Слайд 15





Триггер — это специальный вид хранимой процедуры, которую SQL Server вызывает при выполнении операций модификации соответствующих таблиц. 
Триггер — это специальный вид хранимой процедуры, которую SQL Server вызывает при выполнении операций модификации соответствующих таблиц. 
Триггер автоматически активизируется при выполнении операции, с которой он связан. 
Триггеры связываются с одной или несколькими операциями модификации над одной таблицей.
Описание слайда:
Триггер — это специальный вид хранимой процедуры, которую SQL Server вызывает при выполнении операций модификации соответствующих таблиц. Триггер — это специальный вид хранимой процедуры, которую SQL Server вызывает при выполнении операций модификации соответствующих таблиц. Триггер автоматически активизируется при выполнении операции, с которой он связан. Триггеры связываются с одной или несколькими операциями модификации над одной таблицей.

Слайд 16





Триггеры могут быть эффективно использованы для поддержки семантической целостности БД, однако приоритет их ниже, чем приоритет правил-ограничений (constraints), задаваемых на уровне описания таблиц и на уровне связей между таблицами. 
Триггеры могут быть эффективно использованы для поддержки семантической целостности БД, однако приоритет их ниже, чем приоритет правил-ограничений (constraints), задаваемых на уровне описания таблиц и на уровне связей между таблицами. 
При написании триггеров всегда надо помнить об этом, при нарушении правил целостности по связям (DRI declarative Referential Integrity) триггер просто может никогда не сработать.
Описание слайда:
Триггеры могут быть эффективно использованы для поддержки семантической целостности БД, однако приоритет их ниже, чем приоритет правил-ограничений (constraints), задаваемых на уровне описания таблиц и на уровне связей между таблицами. Триггеры могут быть эффективно использованы для поддержки семантической целостности БД, однако приоритет их ниже, чем приоритет правил-ограничений (constraints), задаваемых на уровне описания таблиц и на уровне связей между таблицами. При написании триггеров всегда надо помнить об этом, при нарушении правил целостности по связям (DRI declarative Referential Integrity) триггер просто может никогда не сработать.

Слайд 17





Для создания триггеров используется специальная команда:

Для создания триггеров используется специальная команда:

CREATE TRIGGER <имя_триггера> ON <имя_таблицы>
FOR {[INSERT][. UPDATE] [, DELETE] } [WITH ENCRIPTING]
AS
SQL-операторы (Тело триггера)
Описание слайда:
Для создания триггеров используется специальная команда: Для создания триггеров используется специальная команда: CREATE TRIGGER <имя_триггера> ON <имя_таблицы> FOR {[INSERT][. UPDATE] [, DELETE] } [WITH ENCRIPTING] AS SQL-операторы (Тело триггера)

Слайд 18





Имя триггера является идентификатором во встроенном языке программирования СУБД и должно удовлетворять соответствующим требованиям.

Имя триггера является идентификатором во встроенном языке программирования СУБД и должно удовлетворять соответствующим требованиям.

В параметре FOR задается одна или несколько операций модификации, которые запускают данный триггер.

Параметр WITH ENCRIPTING имеет тот же смысл, что и для хранимых процедур, он скрывает исходный текст тела триггера.
Описание слайда:
Имя триггера является идентификатором во встроенном языке программирования СУБД и должно удовлетворять соответствующим требованиям. Имя триггера является идентификатором во встроенном языке программирования СУБД и должно удовлетворять соответствующим требованиям. В параметре FOR задается одна или несколько операций модификации, которые запускают данный триггер. Параметр WITH ENCRIPTING имеет тот же смысл, что и для хранимых процедур, он скрывает исходный текст тела триггера.

Слайд 19





Ограничения:

Ограничения:

Нельзя использовать в теле триггера операции создания объектов БД (новой БД, новой таблицы, нового индекса, новой хранимой процедуры, нового триггера, новых индексов, новых представлений).
Нельзя использовать в триггере команду удаления объектов DROP для всех типов базовых объектов БД.
Нельзя использовать в теле триггера команды изменения базовых объектов ALTER TABLE, ALTER DATABASE.
Описание слайда:
Ограничения: Ограничения: Нельзя использовать в теле триггера операции создания объектов БД (новой БД, новой таблицы, нового индекса, новой хранимой процедуры, нового триггера, новых индексов, новых представлений). Нельзя использовать в триггере команду удаления объектов DROP для всех типов базовых объектов БД. Нельзя использовать в теле триггера команды изменения базовых объектов ALTER TABLE, ALTER DATABASE.

Слайд 20





Ограничения:

Ограничения:

Нельзя изменять права доступа к объектам БД, то есть выполнять команду GRAND или REVOKE.
Нельзя создать триггер для представления (VIEW).
В отличие от хранимых процедур, триггер не может возвращать никаких значений, он запускается автоматически сервером и не может связаться самостоятельно ни с одним клиентом.
Описание слайда:
Ограничения: Ограничения: Нельзя изменять права доступа к объектам БД, то есть выполнять команду GRAND или REVOKE. Нельзя создать триггер для представления (VIEW). В отличие от хранимых процедур, триггер не может возвращать никаких значений, он запускается автоматически сервером и не может связаться самостоятельно ни с одним клиентом.

Слайд 21






Спасибо за внимание!!!
Описание слайда:
Спасибо за внимание!!!



Похожие презентации
Mypresentation.ru
Загрузить презентацию