Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ответы экзамен_2003.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
854.53 Кб
Скачать
  1. Операторы позиционного удаления и модификации данных.

1.Оператор позиционного удаления

Синтаксис этого оператора следующий:

DELETE FROM <имя таблицы> WHERE CURRENT OF <имя курсора>

Если указанный в операторе курсор открыт и установлен на некоторую строку, и курсор определяет изменяемую таблицу, то текущая строка курсора удаляется, а он позиционируется перед следующей строкой. Таблица, указанная в разделе FROM оператора DELETE, должна быть таблицей, указанной в самом внешнем разделе FROM спецификации курсора.

2.Оператор позиционной модификации

Оператор описывается следующими синтаксическими правилами:

UPDATE <имя таблицы> SET <позиционное предложение set>

[{,<позиционное предложение set >}...] WHERE CURRENT OF <имя курсора>

< позиционное предложение set > ::=

<имя столбца> = { <выражение> | NULL }

Если указанный в операторе курсор открыт и установлен на некоторую строку, и курсор определяет изменяемую таблицу, то текущая строка курсора модифицируется в соответствии с разделом SET. Позиция курсора не изменяется.

  1. Понятие, назначение и структура хранимых процедур.

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

В MS SQL Server хранимая процедура создается оператором:

  • CREATE PROC[EDURE] <имя_процедуры> [; <версия>]

  • [{@параметр1 тип_данных]

  • [VARYING] [=<значение_по_умолчанию>] [OUTPUT]

  • [,. ПараметрN…]

  • [WITH

  • {RECOMPILE

  • | ENCRYPTION

  • |RECOMPILE, ENCRYPTION}]

  • [FOR REPLICATION]

  • AS

  • Тело процедуры

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

Ключевое слово RECOMPILE определяет режим компиляции создаваемой хранимой процедуры. Если задано ключевое слово RECOMPILE, то процедура будет перекомпилироваться каждый раз, когда она будет вызываться на исполнение. Это может замедлить выполнение процедуры.

Ключевое слово ENCRYPTION определяет режим, при котором исходный текст хранимой процедуры не сохраняется в БД. Часто такой режим применяется, когда вы ставите готовую базу заказчику и не хотите, чтобы исходные тексты разработанных вами хранимых процедур были доступны администратору БД.

  • Хранимые процедуры пишутся на специальном встроенном языке программирования, они могут включать любые операторы SQL, а также некоторый набор операторов, управляющих ходом выполнения программ (операторы процедурного языка). В коммерческих СУБД для написания текстов хранимых процедур используются собственные языки программирования, так, в СУБД Oracle для этого используется PL/SQL, а в MS SQL SERVER и System11 фирмы Sybase используется язык Transact SQL. В последних версиях Oracle используется язык Java для написания хранимых процедур.

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