База ответов ИНТУИТ

Основы SQL

<<- Назад к вопросам

Разработан курсор для создания списка книг, вышедших в издательстве "Мир".

DECLARE @n     VARCHAR(50),        @iz    VARCHAR(50),                @p     MONEY,        @message VARCHAR(80)DECLARE @cur1 CURSORPRINT '  Список книг'DECLARE cursor1 CURSOR FOR   SELECT Название, Издательство, Цена   FROM Книга   WHERE Издательство="Мир"OPEN cursor1SET @cur1=cursor1FETCH NEXT FROM cursor1 INTO  @n, @iz, @pWHILE @@FETCH_STATUS=0BEGIN    SELECT @message='Книга '+@n+'        Цена  '+ CAST(@p AS VARCHAR(4))    PRINT @message-- переход к следующему клиенту--    FETCH NEXT FROM cursor1 INTO @n, @iz,@pENDCLOSE cursor1DEALLOCATE cursor1

Укажите правильные ответы.

(Отметьте один правильный вариант ответа.)

Варианты ответа
переприсваивание открытого курсора (оператор SET) недопустимо
в операторе FETCH порядок следования переменных не соответствует полям оператора SELECT в объявлении курсора
курсор написан без ошибок(Верный ответ)
освобождение ресурсов производится до закрытия курсора, что недопустимо
Похожие вопросы

Разработан курсор для печати списка книг.

DECLARE @n     VARCHAR(50),        @iz    VARCHAR(50),                @p     MONEY,        @message VARCHAR(80)DECLARE @cur1 CURSORPRINT '  Список книг'DECLARE cursor1 CURSOR GLOBAL SCROLL KEYSET FOR   SELECT Название, Издательство, Цена   FROM Книга   WHERE Издательство="Мир"OPEN cursor1SET @cur1=cursor1FETCH LAST  FROM cursor1 INTO  @n, @iz, @pFETCH ABSOLUTE 2 FROM cursor1 INTO  @n, @iz, @pFETCH RELATIVE -2 FROM cursor1 INTO  @n, @iz, @p    SELECT @message='Книга '+@n+'  Цена  '+     CAST(@p AS VARCHAR(4))    PRINT @message    CLOSE cursor1DEALLOCATE cursor1

Какая из имеющихся в курсоре записей будет распечатана?

Пусть в таблице Книга представлены записи, значения поля Код_Книги в которых равны 1, 3, 4, 7, 9 и 10. Создан курсор для вывода списка книг издательства «Мир».

DECLARE @n     VARCHAR(50),        @iz    VARCHAR(50),                @p     MONEY,        @message VARCHAR(80)DECLARE @cur1 CURSORPRINT '  Список клиентов'DECLARE cursor1 CURSOR GLOBAL SCROLL KEYSET FOR   SELECT Название, Издательство, Цена   FROM Книга   WHERE Издательство=’Мир’OPEN cursor1SET @cur1=cursor1FETCH ABSOLUTE 3  FROM cursor1 INTO  @n, @iz, @p    DELETE Книга     WHERE CURRENT OF @cur1 FETCH RELATIVE -2 FROM cursor1 INTO  @n, @iz, @p    UPDATE Книга SET Цена=Цена*1.5    WHERE CURRENT OF cursor1    SELECT @message='Книга '+@n+'  Цена  '+         CAST(@p AS VARCHAR(4))    PRINT @message    CLOSE cursor1DEALLOCATE cursor1

Какие действия выполнит система?

Разработан курсор для печати списка телефонных тарифов городов Поволжья.

DECLARE @n     VARCHAR(50),        @r     VARCHAR(50),                @t     MONEY,        @message VARCHAR(80)DECLARE @cur1 CURSORPRINT '  Тарифы Поволжья'DECLARE cursor1 CURSOR FOR   SELECT Название, Тариф, Регион   FROM Город   WHERE Регион="Поволжье"OPEN cursor1SET @cur1=cursor1FETCH NEXT FROM cursor1 INTO  @n, @t, @rWHILE @@FETCH_STATUS=0BEGIN	FETCH NEXT FROM cursor1 INTO  @n, @t, @r    SELECT @message='Город '+@n+    '  Тариф  '+ CAST(@t AS VARCHAR(4))    PRINT @messageENDCLOSE cursor1DEALLOCATE cursor1

Укажите правильные ответы.

Пусть в таблице Книга представлены записи, где значения поля Код_Книги равны 1, 2 ,3 ,4 ,5 ,6 ,7 ,8 ,9 и 10. Создан курсор для вывода списка книг издательства "Мир".

DECLARE @n     VARCHAR(50),        @iz    VARCHAR(50),                @p     MONEY,        @message VARCHAR(80)DECLARE @cur1 CURSORPRINT '  Список книг'DECLARE cursor1 CURSOR GLOBAL SCROLL KEYSET FOR   SELECT Название, Издательство, Цена   FROM Книга   WHERE Издательство="Мир"OPEN cursor1SET @cur1=cursor1FETCH ABSOLUTE 9  FROM cursor1 INTO  @n, @iz, @p    DELETE Книга     WHERE CURRENT OF @cur1 FETCH RELATIVE -2 FROM cursor1 INTO  @n, @iz, @p    UPDATE Книга SET Цена=Цена*1.5    WHERE CURRENT OF cursor1    SELECT @message='Книга '+@n+'  Цена  '+       CAST(@p AS VARCHAR(4))    PRINT @message    CLOSE cursor1DEALLOCATE cursor1

Какие действия выполнит система?

Разработан курсор для вывода списка рейсов до Москвы.

DECLARE @n     INT,        @k     VARCHAR(50),                @p     MONEY,        @message VARCHAR(80)DECLARE @cur1 CURSORPRINT '  Список рейсов'DECLARE cursor1 CURSOR FOR   SELECT Номер_рейса, Стоимость, Конечный_пункт   FROM Рейс   WHERE Конечный_пункт="Москва"OPEN cursor1SET @cur1=cursor1FETCH NEXT FROM cursor1 INTO  @p, @n, @kWHILE @@FETCH_STATUS=0BEGIN    SELECT @message='Рейс '+    CAST(@n AS VARCHAR(20))+    '  Стоимость  '+ CAST(@p AS VARCHAR(4))    PRINT @message    FETCH NEXT FROM cursor1 INTO @p, @n, @kENDDEALLOCATE cursor1CLOSE cursor1

Укажите правильные ответы.

Разработан курсор для вывода списка десертов.

DECLARE @b     VARCHAR(50),        @t     VARCHAR(50),                @k     INT,        @message VARCHAR(80)DECLARE @cur1 CURSORPRINT '  Меню'DECLARE cursor1 CURSOR FOR   SELECT Название_блюда, Калорийность, Тип_блюда   FROM Блюдо   WHERE Тип_блюда="Десерт"OPEN cursor1SET @cur1=cursor1WHILE @@FETCH_STATUS=0BEGIN    SELECT @message='Блюдо '+@b+    '  Калорийность '+ CAST(@k AS VARCHAR(4))    PRINT @message    FETCH NEXT FROM cursor1 INTO @t, @b, @kENDCLOSE cursor1DEALLOCATE cursor1

Укажите правильные ответы.

Разработан курсор для печати списка номеров рейсов.

DECLARE @n     INT,        @k     VARCHAR(50),                @p     MONEY,        @message VARCHAR(80)DECLARE @cur1 CURSORPRINT '  Список клиентов'DECLARE cursor1 CURSOR GLOBAL SCROLL STATIC FOR   SELECT Номер_рейса, Стоимость, Конечный_пункт   FROM Рейс   WHERE Конечный_пункт="Москва"OPEN cursor1SET @cur1=cursor1FETCH FIRST  FROM cursor1 INTO  @n, @p, @kFETCH ABSOLUTE 3 FROM cursor1 INTO  @n, @p, @kFETCH NEXT  FROM cursor1 INTO  @n, @p, @k    SELECT @message='Рейс '+CAST(@n AS VARCHAR(20))+    '  Стоимость  '+ CAST(@p AS VARCHAR(4))    PRINT @message    CLOSE cursor1DEALLOCATE cursor1

Какая из имеющихся в курсоре записей будет распечатана?

Разработан курсор для вывода списка десертов.

DECLARE @b     VARCHAR(50),        @t     VARCHAR(50),                @k     INT,        @message VARCHAR(80)DECLARE @cur1 CURSORPRINT '  Меню'DECLARE cursor1 CURSOR GLOBAL  FORWARD_ONLY DYNAMIC FOR    SELECT Название_блюда, Калорийность, Тип_блюда   FROM Блюдо   WHERE Тип_блюда="Десерт"OPEN cursor1SET @cur1=cursor1FETCH LAST  FROM cursor1 INTO  @t, @b, @kFETCH ABSOLUTE 2 FROM cursor1 INTO  @t, @b, @kFETCH RELATIVE -2 FROM cursor1 INTO  @t, @b, @k    SELECT @message='Блюдо '+@b+    '  Калорийность '+ CAST(@k AS VARCHAR(4))    PRINT @message    CLOSE cursor1DEALLOCATE cursor1

Какая из имеющихся в курсоре записей будет распечатана?

Разработан курсор для вывода списка телефонных тарифов городов Поволжья.

DECLARE @n     VARCHAR(50),        @r     VARCHAR(50),                @t     MONEY,        @message VARCHAR(80)DECLARE @cur1 CURSORPRINT '  Тарифы Поволжья'DECLARE cursor1 CURSOR LOCAL SCROLL FOR    SELECT Название, Тариф, Регион   FROM Город   WHERE Регион='Поволжье'OPEN cursor1SET @cur1=cursor1FETCH NEXT  FROM cursor1 INTO  @n, @t, @rFETCH RELATIVE 3 FROM cursor1 INTO  @n, @t, @rFETCH RELATIVE -2 FROM cursor1 INTO  @n, @t, @r    SELECT @message='Город '+@n+    '  Тариф  '+ CAST(@t AS VARCHAR(4))    PRINT @message    CLOSE cursor1DEALLOCATE cursor1

Какая из имеющихся в курсоре записей будет распечатана?

Пусть в таблице Блюдо есть поле Номер_блюда, и его значения равны 2, 4, 6 ,8 ,10. Создан курсор для вывода списка десертов

DECLARE @b     VARCHAR(50),        @t     VARCHAR(50),                @k     INT,        @message VARCHAR(80)DECLARE @cur1 CURSORPRINT '  Меню'DECLARE cursor1 CURSOR LOCAL SCROLL STATIC FOR   SELECT Название_блюда, Калорийность, Номер_блюда   FROM Блюдо   WHERE Тип_блюда="Десерт"OPEN cursor1SET @cur1=cursor1FETCH LAST FROM cursor1 INTO  @t, @b, @kFETCH RELATIVE -3  FROM cursor1 INTO  @t, @b, @k    DELETE Блюдо     WHERE CURRENT OF @cur1 FETCH RELATIVE 2 FROM cursor1 INTO  @t, @b, @k    UPDATE Блюдо SET Калорийность=Калорийность*1.5    WHERE CURRENT OF cursor1    SELECT @message='Блюдо '+@b+'  Калорийность '+       CAST(@k AS VARCHAR(4))    PRINT @messageCLOSE cursor1DEALLOCATE cursor1

Какие действия выполнит система?