игра брюс 2048
Главная / Базы данных / SQL и процедурно-ориентированные языки / Тест 9

SQL и процедурно-ориентированные языки - тест 9

Упражнение 1:
Номер 1
Какие из далее объявленных переменных
int var1;
EXEC SQL BEGIN DECLARE SECTION;
int var2;
char var3[10];
EXEC SQL END DECLARE SECTION;можно использовать в качестве INTO-переменных встроенного SQL:

Ответ:

 (1) var1 

 (2) var2 

 (3) var3 


Номер 2
Какую из далее объявленных переменных
int var1;
EXEC SQL BEGIN DECLARE SECTION;
int var2;
char var3[10];
EXEC SQL END DECLARE SECTION; можно использовать в качестве индикаторной переменной встроенного SQL:

Ответ:

 (1) var1 

 (2) var2 

 (3) var3 


Номер 3
Какие из далее объявленных переменных
int var1;
EXEC SQL BEGIN DECLARE SECTION;
int var2;
char var3[10];
EXEC SQL END DECLARE SECTION;можно использовать в качестве переменных связи встроенного SQL:

Ответ:

 (1) var1 

 (2) var2 

 (3) var3 


Упражнение 2:
Номер 1
Какое значение будет занесено в поле f2 оператором
EXEC SQL INSERT INTO tbl1 (f1,f2,f3) 
   VALUES( :f1,:f2:indf2, :f3:indf3); если индикаторная переменная indf2 равна нулю:

Ответ:

 (1) текущее значение переменной f2

 (2) значение 0 

 (3) значение NULL 


Номер 2
Какое значение будет присвоено индикаторной переменной indf2, используемой в операторе 
EXEC SQL FETCH c1 INTO :f1,:f2 
   INDICATOR:indf2, :f3:indf3; если извлекаемое значение поля f2 равно NULL:

Ответ:

 (1) NULL 

 (2) 0 

 (3) отрицательное значение 


Номер 3
Каким образом будет изменено значение в поле f2 оператором 
EXEC SQL UPDATE tbl1 SET f1= :f1,f2=:f2:indf2; если индикаторная переменная indf2 имеет отрицательное значение:

Ответ:

 (1) будет занесено текущее значение переменной f2

 (2) будет занесено значение 0 

 (3) будет занесено значение NULL 


Упражнение 3:
Номер 1
В каком случае оператор встроенного SQL 
EXEC SQL SELECT f1,f2 FROM tbl1 
   INTO :f1,:f2 WHERE f2>100;не выдаст сообщения об ошибке:

Ответ:

 (1) существует только одна строка, удовлетворяющая указанному условию 

 (2) указанному условию удовлетворяют две строки 

 (3) указанному условию удовлетворяет произвольное число строк 


Номер 2
Укажите, какой из следующих курсоров можно использовать в позиционированном операторе UPDATE:

Ответ:

 (1) EXEC SQL DECLARE c1 CURSOR FOR SELECT f1,f2,f3 FROM tbl1 WHERE f2>100; 

 (2) EXEC SQL DECLARE c1 CURSOR FOR SELECT f1,f2,f3 FROM tbl1 ORDER BY f1; 

 (3) EXEC SQL DECLARE c1 CURSOR FOR SELECT sum(f2) FROM tbl1; 


Номер 3
Какой из следующих операторов создает результирующий набор курсора c1:

Ответ:

 (1) EXEC SQL DECLARE c1 CURSOR FOR SELECT f1,f2 FROM tbl1; 

 (2) EXEC SQL OPEN c1; 

 (3) EXEC SQL FETCH c1 INTO :f1,:f2; 


Упражнение 4:
Номер 1
Какие из далее объявленных переменных 
int var1;
int var2;
EXEC SQL BEGIN DECLARE SECTION;
int var3;
EXEC SQL END DECLARE SECTION;можно использовать в качестве переменных связи встроенного SQL:

Ответ:

 (1) var1 

 (2) var2 

 (3) var3 


Номер 2
Какое значение будет занесено в поле f2 оператором 
EXEC SQL INSERT INTO tbl1 (f1,f2,f3) 
   VALUES( :f1,:f2:indf2, :f3:indf3);, если индикаторная переменная indf2 равна отрицательному значению:

Ответ:

 (1) текущее значение переменной f2

 (2) значение 0 

 (3) значение NULL 


Номер 3
В каком случае при выполнении оператора встроенного 
SQL EXEC SQL SELECT f1,f2,f3 
   FROM tbl1 INTO :f1,:f2,:f3 WHERE f2=50;не будет выдано сообщения об ошибке:

Ответ:

 (1) указанному условию удовлетворяют две строки 

 (2) существует только одна строка, удовлетворяющая указанному условию 

 (3) указанному условию удовлетворяет произвольное число строк 


Упражнение 5:
Номер 1
Какое значение будет присвоено индикаторной переменной indf3, используемой в операторе 
EXEC SQL FETCH c1 INTO :f1,:f2 
   INDICATOR:indf2, :f3:indf3; если извлекаемое значение поля f3 равно NULL:

Ответ:

 (1) NULL 

 (2) 0 

 (3) отрицательное значение 


Номер 2
Укажите, какой из следующих курсоров можно использовать в позиционированном операторе UPDATE:

Ответ:

 (1) EXEC SQL DECLARE c1 CURSOR FOR SELECT * FROM tbl1 ORDER BY f1; 

 (2) EXEC SQL DECLARE c1 CURSOR FOR SELECT * FROM tbl1; 

 (3) EXEC SQL DECLARE c1 CURSOR FOR SELECT COUNT() FROM tbl1; 


Номер 3
Какой из следующих операторов закрывает результирующий набор курсора c1:

Ответ:

 (1) EXEC SQL DECLARE c1 CURSOR FOR SELECT f1,f2 FROM tbl1; 

 (2) EXEC SQL OPEN c1

 (3) EXEC SQL FETCH c1 INTO :f1,:f2; 

 (4) EXEC SQL CLOSE c1; 




Главная / Базы данных / SQL и процедурно-ориентированные языки / Тест 9