Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Если используется однострочный запрос, то результат может присваиваться соответствующим переменным.




Пример:

Declare @i As int, @a As nchar(10)

select @i= col1, @a = col2 from Table_2

Where Col1 = 1

select @i, @a

Результат:

 

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

Пример:

Declare @i As int, @a As nchar(10)

select @i= col1, @a = col2 from Table_2

select @i, @a

Результат:

 

В случае многострочных запросов (результатом которых является получение целого набора строк) приложение должно иметь возможность проработать все полученные строки.

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

Курсор в SQL – это область в памяти базы данных, которая предназначена для хранения последнего оператора SQL. Указанная область в памяти поименована и доступна для прикладных программ.

 

Курсоры позволяют усовершенствовать обработку результатов:

· позиционируясь на отдельные строки результирующего набора;

· получая одну или несколько строк от текущей позиции в результирующем наборе;

· поддерживая изменение данных в строках в текущей позиции результирующего набора;

· поддерживая разные уровни видимости изменений, сделанных другими пользователями для данных, представленных в результирующем наборе;

· предоставляя инструкциям Transact-SQL в сценариях, хранимых процедурах и триггерах доступ к данным результирующего набора.

 

SQL определяет курсоры статические, динамические и управляемые набором ключей.

В схеме со статическим курсором информация читается из базы данных один раз и хранится в виде моментального снимка (по состоянию на некоторый момент времени), поэтому изменения, внесенные в базу данных другим пользователем, не видны.

Статический курсор не изменяется после создания и всегда отображает тот набор данных, который существовал на момент его открытия.

На время открытия курсора сервер устанавливает блокировку на все строки, включенные в его полный результирующий набор. В статический курсор внести изменения невозможно, поэтому он всегда открывается в режиме "только для чтения".

Поделиться:





Читайте также:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...