SQL - ответы на тесты Интуит

Правильные ответы выделены зелёным цветом.
Все ответы: Проверка знаний синтаксиса и семантики основных конструкций операторов групп: DML (data manipulation language), DDL (data definition language) и DCL (data control language). Проверка знаний синтаксиса и семантики операторов работы с различными объектами БД. Проверка знаний синтаксиса и семантики операторов управления транзакциями. Проверка знаний различных режимов изоляции транзакций.
Смотрите также:
Для получения информации из базы данных служит команда
(1) GET
(2) OPEN
(3) READ
(4) SELECT
(5) VIEW
Реляционная операция выборки реализуется в команде SELECT посредством
(1) фразы HAVING
(2) фразы ORDER
(3) фразы WHERE
(4) перечня имен во фразе FROM
(5) перечня имен во фразе SELECT
Реляционная операция эквисоединения реализуется в команде SELECT с помощью
(1) операции конкатенации
(2) перечня имен во фразе FROM
(3) фразы JOIN ... USING
(4) фразы NATURAL JOIN
(5) фразы UNION
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)

Запрос SQL предназначен для получения имен студентов, имеющих средний балл по математике (Math_scope) от 3 до 4 включительно, и имеет вид:

SELECT Student_name FROM Students WHERE ______________

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают выполнение задания.

(1) Math_scope <= 4.0 AND Math_scope >>= 3.0
(2) Math_scope >= 3.0 OR Math_scope <= 4.0
(3) Math_scope BETWEEN 3.0 AND 4.0
(4) Math_scope BETWEEN 3.0 AND 4.1
(5) Math_scope IN (3.0, 4.0)
За словом SELECT может следовать
(1) символ "*" (звездочка)
(2) слово ALL
(3) слово LIMIT
(4) логическое выражение
(5) название таблицы
Требуется получить список студентов в таком порядке, чтобы вначале списка были студенты с наибольшим баллом по математике (Math_scope). Если у нескольких студентов балл по математике одинаков, то имена таких студентов (Student_name) должны идти в алфавитном порядке. Выберите варианты сортировки, соответствующие заданию.
(1) ORDER BY Math_scope, Student_name ASC
(2) ORDER BY Math_scope DESC, Student_name
(3) ORDER BY Math_scope DESC, Student_name ASC
(4) ORDER BY Student_name Math_scope DESC
(5) ORDER BY Student_name ASC, Math_scope DESC
Использование фразы GROUP BY
(1) обязательно при использовании итоговых функций
(2) переупорядочивает строки исходной таблицы таким образом, чтобы строки с одинаковым значением указанного столбца находились рядом, в одной группе
(3) приводит к удалению строк-дубликатов по значению указанного столбца
(4) создает одну результатную строку для всех строк исходной таблицы, в которых указанный столбец принимает одинаковые значения
(5) необходимо для вычисления выражений, затрагивающих несколько столбцов одной строки
Функция COUNT
(1) возвращает количество непустых значений в указанном столбце таблицы
(2) возвращает количество непустых столбцов в таблице
(3) может использоваться для определения количества строк в таблице
(4) преобразует строку в число
(5) возвращает количество различных чисел в указанном столбце таблицы
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char, NOT NULL), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)

Требуется получить количество всех студентов

Выберите из предложенных вариантов те, которые обеспечивают выполнение задания.

(1) SELECT COUNT(*) FROM Students
(2) SELECT COUNT(DISTINCT Student_name) FROM Students
(3) SELECT COUNT(Student_id) FROM Students
(4) SELECT COUNT(Student_name) FROM Students
(5) SELECT DISTINCT COUNT(Student_name) FROM Students
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)

Требуется получить количество студентов, являющихся старостами. (Head_stud_id - идентификатор студента-старосты)

Выберите из предложенных вариантов те, которые обеспечивают выполнение задания.

(1) SELECT COUNT(Distinct Head_stud_id) FROM Students
(2) SELECT COUNT(Distinct id) FROM (SELECT t1.Student_id id FROM Students t1, Students t2 WHERE t1.Head_stud_id = t2.Student_id) t
(3) SELECT COUNT(id) FROM (SELECT Student_id id FROM Students WHERE Student_id IN (SELECT Head_stud_id FROM Students)) t
(4) SELECT COUNT(id) FROM (SELECT t2.Student_id id FROM Students t1, Students t2 WHERE t1.Head_stud_id = t2.Student_id) t
(5) SELECT COUNT(Head_stud_id) FROM Students
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char, NOT NULL), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)

Требуется получить имена студентов, имеющих самую высокую оценку по математике.

Выберите варианты условия (вместо знака подчеркивания), соответствующие заданию.

SELECT Student_name FROM Students WHERE _______________
(1) Math_scope > MAX(Math_scope)
(2) Math_scope >= ALL (SELECT Math_scope FROM Students)
(3) Math_scope > ANY (SELECT Math_scope FROM Students)
(4) Math_scope >= (SELECT MAX(Math_scope) FROM Students)
(5) Math_scope >= (SELECT Math_scope FROM Students)

Если отношение t1 содержит k1 кортежей, а отношение t2 содержит k2 кортежей, то результат выполнения запроса

SELECT * FROM t1, t2

будет содержать

(1) 0 кортежей
(2) различное количество кортежей в зависимости от данных, содержащихся в исходных отношениях
(3) k1*k2 кортежей
(4) k1+k2 кортежей
(5) max(k1, k2) кортежей
(6) min(k1, k2) кортежей
Операциями внешнего соединения таблиц являются:
(1) CROSS JOIN
(2) FULL JOIN
(3) LEFT JOIN
(4) NATURAL JOIN
(5) перечисление таблиц через запятую во фразе FROM
Задать внешнее соединение таблиц можно с помощью конструкции
(1) CROSS OUTER JOIN
(2) FULL OUTER JOIN
(3) JOIN ... USING
(4) LEFT OUTER JOIN
(5) перечисления через запятую имен таблиц во фразе FROM
Оператор JOIN реализует реляционную операцию
(1) объединения
(2) пересечения
(3) проекции
(4) произведения
(5) соединения
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char, NOT NULL), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)

Требуется получить имена студентов, обучающихся в 10-й и 20-й группах.

Выберите варианты запросов, соответствующие заданию.

(1) SELECT Student_name FROM Students WHERE (Group_id = 10 UNION Group_id = 20)
(2) SELECT Student_name (FROM Students WHERE Group_id = 10 UNION FROM Students WHERE Group_id = 20)
(3) SELECT Student_name FROM Students WHERE Group_id = 10 UNION SELECT Student_name FROM Students WHERE Group_id = 20
(4) (SELECT Student_name FROM Students WHERE Group_id = 10) UNION SELECT Student_name FROM Students WHERE Group_id = 20
(5) SELECT Student_name FROM Students WHERE Group_id = 10 UNION (SELECT Student_name FROM Students WHERE Group_id = 20)
(6) (SELECT Student_name FROM Students WHERE Group_id = 10) UNION (SELECT Student_name FROM Students WHERE Group_id = 20)
Какие из перечисленных типов данных не относятся к вещественным типам:
(1) TINYINT
(2) REAL
(3) FLOAT
(4) LONG
(5) TIMESTAMP

Оператор INSERT:

(1) допускает использование подзапросов
(2) позволяет вставить в таблицу не более одной строки за один запрос
(3) является оператором DDL
(4) может включать фразу VALUES
(5) обязательно требует перечисления названий столбцов, в которые будет осуществляться вставка значений новой строки
Отношение Groups имеет схему:files Groups: Group_id (int PK), Grade_level (int), Specialty_id (int), Head_stud_id (int)

Запрос SQL предназначен для вставки в таблицу Groups новой строки и имеет вид:

INSERT INTO Groups VALUES (12, DEFAULT, NULL, 15)

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

(1) в таблицу будет вставлена строка
Group_idGroup_gradeSpecialty_idHead_stud_id
120015
(2) сервер БД сгенерирует ошибку, и операция будет отменена
(3) в таблицу будет вставлена строка
Group_idGroup_gradeSpecialty_idHead_stud_id
12NULLNULL15
(4) в таблицу будет вставлена строка
Group_idGroup_gradeSpecialty_idHead_stud_id
120NULL15
Отношение Groups имеет схему:files Groups: Group_id (int PK), Grade_level (int), Specialty_id (int), Head_stud_id (int)

Запрос SQL предназначен для вставки в таблицу Groups новой строки и имеет вид:

INSERT _______ Groups ________ (12, 1, 13, 15)

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

(1) первый фрагмент: INTO TABLE второй фрагмент: VALUES
(2) первый фрагмент: IN TABLE второй фрагмент: VALUE
(3) первый фрагмент: IN второй фрагмент: ничего не нужно
(4) первый фрагмент: INTO второй фрагмент: VALUES
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)

и состоит из следующих кортежей:

Student_idStudent_nameHead_stud_idMath_scopeLang_scopeGroup_id
11Scott155.04.310
10TomNULL4.05.0NULL

Запрос SQL имеет вид:

INSERT INTO Students (Student_id, Student_name, Math_scope) VALUES (12, Martin, 4.1)

При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки:

(1) во фразе INSERT не хватает ключевого слова TABLE, которое должно следовать за ключевым словом INTO
(2) во второй строке слово VALUES является лишним
(3) во фразе VALUES определены значения не для всех столбцов таблицы Students
(4) строковая константа "Martin" должна быть заключена в апострофы
(5) вместо ключевого слова INTO следовало использовать слово IN
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)

Отношение Students1 имеет схему:

Students1: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)

Запрос SQL предназначен для копирования информации о студентах учебной группы №20 из таблицы Students в таблицу Students1:

INSERT INTO Students1 (Student_id, Student_name, Math_scope) ___________________

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

(1) SELECT Student_id, Student_name, Math_scope FROM Students WHERE Group_id=20
(2) VALUES (SELECT Student_id, Student_name, Math_scope FROM Students WHERE Group_id=20)
(3) SELECT * FROM Students WHERE Group_id=20
(4) AS SELECT Student_id, Student_name, Math_scope FROM Students WHERE Group_id=20
(5) (SELECT Student_id, Student_name, Math_scope FROM Students WHERE Group_id=20)

Фраза SET:

(1) не является обязательной в запросе UPDATE
(2) используется для задания новых значений столбцам в запросе UPDATE
(3) может включать подзапросы
(4) позволяет изменять значения только в одном столбце (в одном запросе)
(5) может следовать после фразы WHERE в запросе UPDATE
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)

Запрос предназначен для снижения на 10% успеваемости по математике (Math_scope) и ин. языку (Lang_scope) среди студентов учебной группы №20.

UPDATE Students SET _______________ WHERE Group_id = 20

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

(1) Math_scope*0.9 AND Lang_scope*0.9
(2) Math_scope = Math_scope*0.9 AND Lang_scope = Lang_scope*0.9
(3) Math_scope = Math_scope*0.9, Lang_scope = Lang_scope*0.9
(4) Math_scope, Lang_scope = (Math_scope*0.9, Lang_scope*0.9)
Отношение Groups имеет схему:files Groups: Group_id (int PK), Grade_level (int), Specialty_id (int FK), Head_stud_id (int)

Запрос предназначен для перевода группы № 10 на третий курс (Grade_level=3) и назначения группе № 20 нового старосты (Head_stud_id) – студента с номером 15.

UPDATE Groups SET________________ __________________

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

(1) первый фрагмент: Grade_level = 3, Head_stud_id = 15 второй фрагмент: WHERE Group_id = 10, 20
(2) первый фрагмент: Grade_level = 3, Head_stud_id = 15 второй фрагмент: WHERE Group_id = 10, Group_id= 20
(3) первый фрагмент: Grade_level = 3 WHERE Group_id = 10, Head_stud_id = 15 WHERE Group_id = 20 второй фрагмент: ничего не нужно
(4) первый фрагмент: Grade_level = CASE Group_id WHEN 10 THEN 3 END, Head_stud_id = CASE Group_id WHEN 20 THEN 15 END второй фрагмент: ничего не нужно
(5) первый фрагмент: Grade_level = CASE Group_id WHEN 10 THEN 3 ELSE Grade_level END, Head_stud_id = CASE Group_id WHEN 20 THEN 15 ELSE Head_stud_id END второй фрагмент: ничего не нужно
Отношение Students состоит из кортежей:files
Student_idStudent_nameHead_stud_idMath_scopeLang_scopeGroup_id
12Alex284.210.010
11Tom153.98.020
Отношение Groups состоит из кортежей:
Group_idGroup_gradeHead_stud_idSpecialty_id
10515123
203NULL11

Запрос SQL имеет вид:

UPDATE Students SET Lang_scope = (SELECT AVG (Lang_scope)*1.1 FROM Students) WHERE Group_id IN (SELECT Group_id FROM Groups WHERE Group_grade = 3)

Среди предложенных вариантов выберите, каким, в итоге, останется отношение Students.

(1) отношение Students останется без изменений, т.к. запрос содержит ошибку, и выполнен не будет
(2)
Student_idStudent_nameHead_stud_idMath_scopeLang_scopeGroup_id
12Alex284.210.010
11Tom153.99.920
(3)
Student_idStudent_nameHead_stud_idMath_scopeLang_scopeGroup_id
12Alex284.210.010
11Tom153.99.020
(4)
Student_idStudent_nameHead_stud_idMath_scopeLang_scopeGroup_id
12Alex284.29.910
11Tom153.99.920
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)

Запрос предназначен для удаления записей о студентах учебной группы №20.

DELETE _________Students ____________ Group_id = 20

Какие ключевые слова следует вставить вместо знаков подчеркивания для получения корректного запроса, решающего поставленную задачу?

(1) Первый фрагмент: FROM TABLE второй фрагмент: WHERE
(2) Первый фрагмент: ничего, второй фрагмент: WHERE
(3) Первый фрагмент: FROM, второй фрагмент: WHEN
(4) Первый фрагмент: FROM, второй фрагмент: IF
(5) Первый фрагмент: FROM, второй фрагмент: WHERE
Выражение предназначено для описания столбца Math_scope типа float в новой таблице Student1. Столбец не должен принимать значение NULL, и его значением по умолчанию должно быть значение 3.5. CREATE TABLE Student1 (….. Math_scope_____________________ ……)

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

(1) FLOAT DEFAULT Math_scope = 3.5 NOT NULL
(2) FLOAT IS NOT NULL DEFAULT (3.5)
(3) FLOAT, NOT NULL, DEFAULT 3.5
(4) NOT NULL FLOAT DEFAULT VALUE = 3.5
(5) FLOAT NOT NULL DEFAULT 3.5
Выражение предназначено для описания столбца Salary типа int в новой таблице Worker1. Столбец не должен принимать значение NULL, и его значением по умолчанию должно быть значение 800. CREATE TABLE Worker1 (….. Salary_____________________ ……)

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

(1) INT NOT NULL DEFAULT 800
(2) INT NOT NULL WITH DEFAULT 800
(3) INT IS NOT NULL WHEN DEFAULT 800
(4) INT DEFAULT VALUE = 800 NOT NULL
(5) INT, NOT NULL, DEFAULT 800

Ограничение FOREIGN KEY:

(1) включает в себя ограничение UNIQUE
(2) предполагает, что значения столбца, для которого оно задано, могут выбираться из существующих значений соответствующего первичного ключа
(3) обязательно должно содержать фразу ON DELETE
(4) может содержать фразу ON UPDATE
(5) может задаваться только на уровне отдельных столбцов
Какие из перечисленных ограничений требуют уникальности значений в заданном столбце (группе столбцов):
(1) UNIQUE
(2) PRIMARY KEY
(3) FOREIGN KEY
(4) NOT NULL
(5) CHECK
Для создания таблицы Groups использовалась следующая команда:files CREATE TABLE Groups (Group_id INT PRIMARY KEY, Grade_level INT, Head_stud_id INT, Specialty_id INT REFERENCES Specialties (Specialty_id) DEFAULT 20 )

Отношение Groups состоит из кортежей:

Group_idGroup_gradeHead_stud_idSpecialty_id
1531510

Отношение Specialties состоит из следующих кортежей:

Specialty_idSpecialty_titleSpecialty_rating
10Account9.8
20Sales6.2

Запрос SQL имеет вид:

DELETE FROM Specialties WHERE Specialty_id=10

Укажите, каким в результате выполнения данного запроса окажется отношение Groups:

(1) отношение Groups останется без изменений
(2) отношение Groups окажется пустым
(3)
Group_idGroup_gradeHead_stud_idSpecialty_id
15315NULL
(4)
Group_idGroup_gradeHead_stud_idSpecialty_id
1531520
Запрос предназначен для создания таблицы Students, связанной с таблицей Groups ограничением ссылочной целостности по столбцам Students.Group_id, Groups.Group_id, гарантирующим, что при удалении записи о некоторой группе, записи о студентах, принадлежащих этой группе, автоматически будут переназначаться группе с номером 20.files CREATE TABLE Students (Student_id INT PRIMARY KEY, Student_name VARCHAR(20), Math_scope FLOAT NOT NULL, Lang_scope FLOAT NOT NULL, Group_id INT ________________________ )

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:

(1) REFERENCES Groups (Group_id) ON DELETE SET DEFAULT 20
(2) REFERENCES Groups (Group_id) ON DELETE SET DEFAULT DEFAULT 20
(3) DEFAULT 20, CONSTRAINT fk_st FOREIGN KEY REFERENCES Groups (Group_id) ON DELETE SET DEFAULT
(4) DEFAULT 20, CONSTRAINT FOREIGN KEY REFERENCES Groups (Group_id) ON DELETE SET DEFAULT
(5) REFERENCES ON Groups ON DELETE SET DEFAULT DEFAULT = 20
Для создания таблицы Students использовалась следующая команда:files CREATE TABLE Students (Student_id INT PRIMARY KEY, Student_name VARCHAR(20), Head_stud_id INT, Math_scope FLOAT NOT NULL, Lang_scope FLOAT NOT NULL, Group_id INT REFERENCES Groups (Group_id) )

Отношение Students состоит из кортежей:

Student_idStudent_nameHead_stud_idMath_scopeLang_scopeGroup_id
12Alex283.510.010

Отношение Groups состоит из кортежей

Group_idGroup_gradeHead_stud_idSpecialty_id
10315123

Запрос SQL имеет вид:

DELETE FROM Groups WHERE Group_id=10

В результате выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину возникновения ошибки:

(1) для столбца Group_id таблицы Students не было задано значение по умолчанию
(2) неверный синтаксис оператора DELETE
(3) нарушено ограничение ссылочной целостности, найдены дочерние строки в связанной таблице
(4) для внешнего ключа Branch_id таблицы Students не задана секция ON DELETE, поэтому удаление любых записей таблицы Branch невозможно

Оператор ALTER TABLE может использоваться для:

(1) добавления столбцов
(2) создания и удаления индексов любых столбцов таблицы
(3) удаления столбцов
(4) одновременного изменения значений нескольких столбцов существующей таблицы
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)

Отношение Groups имеет схему:

Groups: Group_id (int PK), Grade_level (int), Specialty_id (int FK), Head_stud_id (int)

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

CREATE VIEW view1 (Id, Name_of_Student, Group) AS__________________________

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают безошибочное выполнение операции:

(1) SELECT Student_id, Student_name, Group_id FROM Students
(2) SELECT * FROM Students
(3) SELECT Student_id, Student_name, g.Group_id FROM Students s, Groups g WHERE s.Group_id = g.Group_id AND g.Specialty_id = 20
(4) Student_id Id, Student_name Name_of_Student, Group_id Group FROM Students
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)

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

CREATE VIEW view1 AS SELECT * FROM Students WHERE Group_id = 10 WITH CHECK OPTION

Запрос SQL имеет вид:

INSERT INTO view1 (Student_id, Student_name, Group_id) VALUES (10, ‘Peter’, 20)

При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки:

(1) через представление нельзя осуществлять вставку данных в базовую таблицу
(2) нарушено ограничение целостности, заданное при создании представления view1
(3) после ключевого слова INTO не хватает слова VIEW
(4) ключевое слово VALUES является лишним
Запрос предназначен для предоставления привилегии на просмотр таблицы Students зарегистрированному пользователю базы данных User1: GRANT ________________User1

Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает безошибочное выполнение операции:

(1) PERMISSION SELECT Students TO
(2) SELECT ON Students FOR
(3) SELECT ON Students TO
(4) SELECTION ON Students FOR
(5) SELECTION ON Students TO
Запрос предназначен для удаления привилегии на вставку данных в таблицу Students у пользователя User1. files REVOKE FROM User1 INSERT ON Students

При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки:

(1) вместо ключевого слова REVOKE следовало использовать ключевое слово DENY
(2) ключевое слово ON является лишним
(3) вместо слова FROM следовало использовать слово TO
(4) фраза INSERT должна идти сразу после слова REVOKE
Выберите из предложенных вариантов правильные названия различных уровней изоляции транзакций (ISOLATION LEVEL)
(1) READ COMMITTED
(2) READ UNCOMMITTED
(3) REPEATABLE WRITE
(4) SERIAL
(5) SEVERE
За словом DISTINCT во фразе SELECT может следовать
(1) символ "*" (звездочка)
(2) слово ALL
(3) функция MIN
(4) название одного столбца
(5) список из нескольких столбцов
Реляционная операция объединения реализуется в команде SELECT с помощью
(1) перечня имен во фразе FROM
(2) фразы GROUP
(3) фразы INNER JOIN
(4) фразы INTERSECT
(5) фразы UNION
Символ "." (точка) используется в команде SELECT
(1) в выражениях для обозначения операции умножения
(2) в конце для завершения запроса
(3) после имени базы данных перед именем таблицы для квалификации имени
(4) после имени столбца перед именем таблицы для квалификации имени
(5) после имени таблицы перед именем столбца при квалификации имени
Чтобы результат был не пуст, во фразе BETWEEN d1 AND d2
(1) d2 не может быть равен или меньше, чем d1
(2) d1 должно быть не больше d2
(3) d1 может быть больше d2
(4) значения d1 и d2 могут быть типа DATE
Требуется отобрать студентов, чьи имена начинаются на букву "В". Выберите варианты условий, соответствующие заданию.
(1) WHERE Student_name = 'B%'
(2) WHERE Student_name >= 'B' AND Student_name < 'C'
(3) WHERE Student_name LIKE '%B%'
(4) WHERE Student_name LIKE 'B_'
(5) WHERE Student_name LIKE 'B%'
Требуется получить список студентов в таком порядке, чтобы сначала шли студенты с наибольшим баллом по математике (Math_scope). Если несколько студентов имеют одинаковый балл по математике, то среди них первыми должны располагаться студенты с наибольшим баллом по иностранному языку (Lang_scope). Выберите варианты сортировки, соответствующие заданию.
(1) ORDER BY Lang_scope, Math_scope
(2) ORDER BY Lang_scope, Math_scope DESC
(3) ORDER BY Lang_scope DESC, Math_scope DESC
(4) ORDER BY Math_scope, Lang_scope
(5) ORDER BY Math_scope, Lang_scope DESC
(6) ORDER BY Math_scope DESC, Lang_scope DESC
Укажите фрагменты, не содержащие ошибок.
(1) GROUP BY Group_id HAVING Head_stud_id = 1
(2) GROUP BY Group_id HAVING MAX(Lang_scope) > 3.9
(3) GROUP BY Group_id ORDER BY Math_scope
(4) SELECT COUNT(Student_id) FROM Students GROUP BY Group_id
(5) SELECT Student_name FROM Students GROUP BY Group_id
Итоговые функции можно использовать во фразе
(1) GROUP
(2) HAVING
(3) ORDER
(4) SELECT
(5) WHERE
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char, NOT NULL), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)

Требуется получить количество студентов, аттестованных (имеющих некоторую оценку) по иностранному языку

Выберите из предложенных вариантов те, которые обеспечивают выполнение задания.

(1) SELECT COUNT(*) FROM (SELECT Student_id FROM Students WHERE Lang_scope IS NOT NULL) t
(2) SELECT COUNT(DISTINCT Lang_scope) FROM Students
(3) SELECT COUNT(Lang_scope) FROM Students
(4) SELECT COUNT(Lang_scope IS NOT NULL) FROM Students
(5) SELECT COUNT(Student_name) FROM (SELECT Student_name FROM Students WHERE Lang_scope IS NOT NULL) t
Подзапрос
(1) всегда начинается со слова SELECT
(2) всегда обращается к той же таблице, что и внешний запрос
(3) может содержать в себе другой подзапрос
(4) не может обращаться к той же таблице, что и внешний запрос
(5) содержится во внешнем запросе, всегда начинающемся со слова SELECT
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char, NOT NULL), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int) Отношение Groups имеет схему:files Groups: Group_id (int PK), Grade_level (int), Specialty_id (int), Head_stud_id (int)

Требуется получить список групп, в которых все студенты имеют балл по математике выше 4.5.

Выберите варианты запросов, соответствующие заданию.

(1) SELECT Group_id FROM Students WHERE Math_scope > 4.5
(2) SELECT Group_id FROM Students WHERE ALL (Math_scope) > 4.5
(3) SELECT DISTINCT Group_id FROM Students WHERE Group_id <> ALL (SELECT Group_id FROM Students WHERE Math_scope <= 4.5)
(4) SELECT DISTINCT Group_id FROM Students WHERE Group_id <> ANY (SELECT Group_id FROM Students WHERE Math_scope <= 4.5)
(5) SELECT Group_id FROM Groups WHERE Group_id NOT IN (SELECT Group_id FROM Students WHERE Math_scope <= 4.5)
(6) SELECT Group_id FROM Groups WHERE NOT EXISTS (SELECT * FROM Students WHERE Math_scope <= 4.5 AND Students.Group_id = Groups.Group_id)
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char, NOT NULL), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int) Отношение Groups имеет схему:files Groups: Group_id (int PK), Grade_level (int), Specialty_id (int), Head_stud_id (int)

В каких запросах во фразе FROM необходимо использовать таблицу Students более одного раза?

(1) получить имя студента и номер его группы
(2) получить имя студента и группу, в которой учится его староста
(3) получить имя студента и номер специальности его группы
(4) получить пары студентов, обучающихся в одной группе
(5) получить номера групп, в которых учится более одного студента
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char, NOT NULL), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int) Отношение Groups имеет схему:files Groups: Group_id (int PK), Grade_level (int), Specialty_id (int), Head_stud_id (int)

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

SELECT Student_name, Specialty_id FROM ___________________________

Выберите фрагменты запроса (вместо знака подчеркивания), соответствующие заданию.

(1) Students INNER JOIN Groups
(2) Students INNER JOIN Groups ON Group_id
(3) Students INNER JOIN Groups ON Students.Group_id = Groups.Group_id
(4) Students JOIN Groups USING (Group_id)
(5) Students NATURAL JOIN Groups ON Students.Group_id = Groups.Group_id
(6) Students OUTER JOIN Groups ON Students.Group_id = Groups.Group_id
В таблице t1, содержащей 4 строки, в столбце f содержатся значения 1, 2, 2, 3. В таблице t2, содержащей 5 строк, в столбце f содержатся значения 2, 2, 3, 3, 4.

Сколько строк данных будет получено в результате выполнения запроса

SELECT t2.f FROM t1 FULL OUTER JOIN t2 ON t1.f = t2.f
(1) 3
(2) 4
(3) 5
(4) 6
(5) 8
(6) 9
Чтобы сохранить все записи, в том числе повторяющиеся, в запросе Запрос1 UNION Запрос2

необходимо:

(1) добавить слово ALL в Запрос1
(2) добавить слово ALL в Запрос2
(3) добавить слово ALL и в Запрос1 и в Запрос2
(4) добавить слово ALL после слова UNION
(5) ничего делать не нужно, по умолчанию будут выведены все записи, в том числе и повторяющиеся
Оператор INTERSECT реализует реляционную операцию
(1) деления
(2) объединения
(3) пересечения
(4) проекции
(5) разности
Какой из перечисленных типов данных не относится к числовым:
(1) SMALLINT
(2) BIT
(3) NUMERIC
(4) DECIMAL
(5) TIMESTAMP
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)

Отношение Students1 является пустым и имеет схему:

Students1: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)

Запрос SQL имеет вид:

INSERT INTO Students1 (Student_id, Student_name, Head_stud_id, Math_scope, Lang_scope, Group_id) AS SELECT * FROM Students ORDER BY Group_id DESC

При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки:

(1) вместо ключевого слова INTO следовало использовать словосочетание INTO TABLE
(2) в подзапросе SELECT вместо символа "*" следовало использовать перечисление всех столбцов таблицы Students
(3) ключевое слово AS является лишним
(4) подзапрос должен быть заключен в скобки
(5) фраза ORDER BY недопустима в подзапросе, использующемся для вставки строк
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)

Запрос SQL предназначен для вставки в таблицу Students новой строки и имеет вид:

INSERT _______ Students____________ VALUES (10, 15, ‘Martin’, 3.1)

Выберите из предложенных вариантов те, которые при подстановке вместо знаков подчеркивания обеспечивают безошибочное выполнение запроса

(1) первый фрагмент: INTO TABLE второй фрагмент: (Student_id, Head_stud_id, Math_scope, Student_name)
(2) первый фрагмент: INTO второй фрагмент: (Student_name, Student_id, Head_stud_id, Math_scope)
(3) первый фрагмент: INTO второй фрагмент: (Student_id, Head_stud_id, Student_name, Math_scope)
(4) первый фрагмент: INTO второй фрагмент: (Head_stud_id, Student_id, Student_name, Math_scope)
(5) первый фрагмент: IN второй фрагмент: (Student_id, Head_stud_id, Student_name, Math_scope)
Отношение Groups имеет схему:files Groups: Group_id (int PK), Grade_level (int), Specialty_id (int FK), Head_stud_id (int)

Запрос SQL предназначен для вставки в таблицу Groups новой строки и имеет вид:

INSERT INTO Groups (Group_id, Head_stud_id) VALUES (10, DEFAULT, NULL, 15)

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

(1) в таблицу будет вставлена строка
Group_idGroup_gradeSpecialty_idHead_stud_id
100NULL15
(2) в таблицу будет вставлена строка
Group_idGroup_gradeSpecialty_idHead_stud_id
100015
(3) в таблицу будет вставлена строка
Group_idGroup_gradeSpecialty_idHead_stud_id
10NULLNULL15
(4) сервер БД сгенерирует ошибку, и операция будет отменена
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)

и состоит из следующих кортежей:

Student_idStudent_nameHead_stud_idMath_scopeLang_scopeGroup_id
11Scott155.04.910
10TomNULL4.04.1NULL

Запрос SQL имеет вид:

INSERT INTO Students (Student_id, Math_scope, Student_name) VALUES (12, ‘Tom’, 2.1)

При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Выберите действие, выполнение которого позволит устранить ошибку:

(1) явно преобразовать вещественное значение во фразе VALUES в тип float с помощью функции cast
(2) заменить ключевое слово INTO словосочетанием INTO TABLE
(3) поменять местами во фразе INSERT названия столбцов Math_scope и Student_name
(4) вместо значения ‘Tom’ использовать строковое значение ‘1.2’
Отношение Groups имеет схему:files Groups: Group_id (int PK), Grade_level (int), Specialty_id (int FK), Head_stud_id (int)

Отношение Groups1 имеет схему:

Groups1: Group_id (int PK), Grade_level (int), Specialty_id (int FK), Head_stud_id (int)

Запрос SQL предназначен для копирования информации обо всех учебных группах второго курса (Grade_level=2) из таблицы Groups в таблицу Groups1:

INSERT INTO Groups1 (Group_id, Grade_level, Specialty_id) ___________________

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

(1) SELECT Group_id, Grade_level, Specialty_id FROM Groups WHERE Grade_level=2
(2) VALUES (Group_id, Grade_level, Specialty_id FROM Groups WHERE Grade_level=2)
(3) SELECT * FROM Groups WHERE Grade_level=2
(4) SELECT Group_id, Grade_level, Specialty_id FROM Groups WHERE Grade_level=2 ORDER BY Grade_level
Какие из перечисленных выражений могут следовать непосредственно за ключевым словом UPDATE:
(1) название таблицы
(2) ключевое слово LIMIT
(3) название представления
(4) название столбца, значение в котором следует изменить
(5) ключевое слово TABLE
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)

Запрос предназначен для внесения изменений в записи о студентах учебной группы №20. Для указанных записей номер группы должен быть изменен на 30, а значение в поле Head_stud_id стать равным 15.

UPDATE Students __________________ WHERE Group_id = 20

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

(1) COLUMN Head_stud_id = 15, Group_id =30
(2) SET Head_stud_id = 15, SET Group_id =30
(3) SET Head_stud_id = 15 AND Group_id =30
(4) SET Head_stud_id = 15, Group_id =30
(5) SET COLUMNS Head_stud_id = 15, Group_id =30
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)

Запрос предназначен для увеличения оценки по математике (Math_scope) студентам группы №20 на 10% и студентам группы №30 на 20%.

UPDATE Students SET________________ ____________________

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

(1) первый фрагмент: Math_scope = Math_scope*1.1, Math_scope = Math_scope*1.2 второй фрагмент: WHERE Group_id = 20, 30
(2) первый фрагмент: Math_scope = Math_scope*1.1, Math_scope = Math_scope*1.2 второй фрагмент: WHEN Group_id = 20, Group_id= 30
(3) первый фрагмент: Math_scope = Math_scope*1.1 WHERE Group_id = 20 AND Math_scope = Math_scope*1.2 WHERE Group_id = 30 второй фрагмент: ничего не нужно
(4) первый фрагмент: Math_scope = CASE Group_id WHEN 20 THEN Math_scope*1.1 WHEN 30 THEN Math_scope*1.2 ELSE Math_scope END второй фрагмент: ничего не нужно
(5) первый фрагмент: Math_scope = CASE Group_id WHEN 20 THEN Math_scope*1.1 END, Math_scope = CASE Group_id WHEN 30 THEN Math_scope*1.2 END второй фрагмент: ничего не нужно
Отношение Students состоит из кортежей:files
Student_idStudent_nameHead_stud_idMath_scopeLang_scopeGroup_id
12Alex284.24.410
11Tom153.93.120

Отношение Groups состоит из кортежей:

Group_idGroup_gradeHead_stud_idRating
10515low
203NULLhigh

Запрос SQL имеет вид:

UPDATE Groups SET Rating = ‘HIGH’ WHERE Group_id IN (SELECT Group_id FROM Students WHERE (Math_scope + Lang_scope)/2 >= 4.2)

Среди предложенных вариантов выберите, каким, в итоге, останется отношение Groups.

(1) отношение Groups останется без изменений, т.к. запрос содержит ошибку, и выполнен не будет
(2)
Group_idGroup_gradeHead_stud_idRating
10515High
203NULLhigh
(3)
Group_idGroup_gradeHead_stud_idRating
10515Low
203NULLHigh
(4)
Group_idGroup_gradeHead_stud_idRating
10515HIGH
203NULLhigh
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)

Запрос предназначен для удаления записей о студентах учебной группы №20, с баллом по математике (Math_scope), меньшим 3.5.

DELETE FROM _________Students ______________________________

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

(1) первый фрагмент: TABLE, второй фрагмент: WHERE Group_id = 20 AND Math_scope < 3.5
(2) первый фрагмент: ничего, второй фрагмент: WHERE Group_id = 20 OR Math_scope < 3.5
(3) первый фрагмент: TABLE, второй фрагмент: WHEN Group_id = 20 AND Math_scope < 3.5
(4) первый фрагмент: ничего, второй фрагмент: IF Group_id = 20 OR Math_scope < 3.5
(5) первый фрагмент: ничего, второй фрагмент: WHERE Group_id = 20 AND Math_scope < 3.5

Ключевое слово CONSTRAINT в предложении CREATE TABLE:

(1) может использоваться только для определения ограничений на уровне отдельного столбца
(2) может использоваться для определения ограничений на уровне отдельного столбца и всей таблицы
(3) является необязательным при определении ограничений
(4) не может использоваться при определении столбца вместе с фразой DEFAULT
Запрос SQL имеет вид: CREATE TABLE t1 nom INT PRIMARY KEY, name VARCHAR(30) NOT NULL DEFAULT ('noname'), salary INT DEFAULT 300

При выполнении запроса сервер БД генерирует ошибку. Выберите действие, выполнение которого позволит устранить ошибку:

(1) заменить идентификатор nom, являющийся ключевым словом
(2) удалить ограничение NOT NULL в определении столбца name
(3) заключить все выражение после фразы CREATE TABLE в скобки
(4) добавить непосредственно после первой строки предлог AS

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

(1) позволяет реализовывать простейшие ограничения бизнес-логики
(2) позволяет сузить область допустимых значений для столбца (группы столбцов)
(3) задает список допустимых значений столбца в виде CHECK (значение1, значение2, ...)
(4) может задаваться на уровне всей таблицы, а не только на уровне отдельных столбцов
Какое из перечисленных ограничений является ограничением ссылочной целостности:
(1) CHECK
(2) UNIQUE
(3) NOT NULL
(4) PRIMARY KEY
(5) FOREIGN KEY
Для создания таблицы Students использовалась следующая команда:files CREATE TABLE Students (Student_id INT PRIMARY KEY, Student_name VARCHAR(20), Head_stud_id INT, Math_scope FLOAT NOT NULL, Lang_scope FLOAT NOT NULL, Group_id INT REFERENCES Groups (Group_id) ON UPDATE CASCADE DEFAULT 20 )

Отношение Students состоит из кортежей:

Student_idStudent_nameHead_stud_idMath_scopeLang_scopeGroup_id
12Alex283.510.010

Отношение Groups состоит из кортежей

Group_idGroup_gradeHead_stud_idSpecialty_id
10315123

Запрос SQL имеет вид:

UPDATE Groups SET Group_id=40 WHERE Group_id=10

Укажите, каким в результате выполнения данного запроса окажется отношение Students:

(1) Отношение Students останется без изменений
(2)
Student_idStudent_nameHead_stud_idMath_scopeLang_scopeGroup_id
12Alex283.510.0NULL
(3)
Student_idStudent_nameHead_stud_idMath_scopeLang_scopeGroup_id
12Alex283.510.040
(4)
Student_idStudent_nameHead_stud_idMath_scopeLang_scopeGroup_id
12Alex283.510.020
Запрос предназначен для создания таблицы Students, для которой установлено ограничение, гарантирующее, что столбец Student_id будет принимать только уникальные значения, отличные от NULL.files CREATE TABLE Students ( Student_name VARCHAR(20), Math_scope FLOAT NOT NULL, Lang_scope FLOAT NOT NULL, Student_id INT _____________________ )

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:

(1) UNIQUE, NOT NULL
(2) NOT NULL, UNIQUE (Student_id)
(3) UNIQUE NOT NULL
(4) UNIQUE, CONSTRAINT pk_st NOT NULL (Student_id)
(5) NOT NULL, UNIQUE
Для создания таблицы Students использовалась следующая команда:files CREATE TABLE Students (Student_id INT PRIMARY KEY, Student_name VARCHAR(20), Math_scope FLOAT NOT NULL, Lang_scope FLOAT NOT NULL, CONSTRAINT ch_ls CHECK (Lang_scope > = SELECT AVG (Lang_scope) FROM Students1) )

В результате выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину ошибки:

(1) ограничение CHECK может определяться только на уровне отдельного столбца, но не всей таблицы
(2) при определении ограничения CHECK не могут использоваться подзапросы
(3) в определении ограничения PRIMARY KEY не задано имя ограничения
(4) ограничение PRIMARY KEY может определяться только на уровне целой таблицы, но не отдельного столбца

Фраза ALTER COLUMN в предложении ALTER TABLE может использоваться для:

(1) определения нового ограничения DEFAULT
(2) создания нового столбца
(3) удаления существующего ограничения DEFAULT
(4) одновременного изменения значений нескольких столбцов существующей таблицы
(5) удаления существующего столбца
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)

Отношение Groups имеет схему:

Groups: Group_id (int PK), Grade_level (int), Specialty_id (int FK), Head_stud_id (int)

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

CREATE VIEW view1 AS__________________________

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают безошибочное выполнение операции:

(1) (SELECT Student_name FROM Students JOIN Groups ON Students.Group_id = Groups.Group_id) WITH CHECK OPTION Grade_level = 2
(2) SELECT Student_name FROM Students, Groups WHERE Students.Group_id = Groups.Group_id AND Grade_level = 2
(3) (SELECT Student_name FROM Students JOIN Groups ON Students.Group_id = Groups.Group_id AND Grade_level = 2)
(4) WITH CHECK OPTION Grade_level=2 (SELECT Student_name FROM Students JOIN Groups ON Students.Group_id = Groups.Group_id)
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)

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

CREATE VIEW view1 (St_name, St_no, Math_scope) AS SELECT * FROM Students WHERE Student_id = 10 WITH CHECK OPTION

При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки:

(1) после фразы WITH CHECK OPTION отсутствует логическое условие
(2) во фразе WITH CHECK OPTION пропущено название создаваемого ограничения
(3) число столбцов, заданных во фразе CREATE VIEW не совпадает с числом столбцов, возвращаемых подзапросом
(4) ключевое слово AS является лишним
(5) подзапрос не заключен в скобки
Запрос предназначен для удаления привилегии на обновление столбца Lang_scope таблицы Students у зарегистрированного пользователя базы данных User1. files REVOKE________________User1

Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает безошибочное выполнение операции:

(1) UPDATE COLUMN Lang_scope IN Students FROM
(2) UPDATE (Lang_scope) ON Students FROM
(3) PRIVILEGE UPDATE ON Students (Lang_scope) TO
(4) PERMISSION UPDATE ON Lang_scope (Students) FOR
(5) UPDATE ON Lang_scope (Students) FROM
Запрос предназначен для предоставления привилегии на вставку данных в таблицу Students зарегистрированному в базе данных пользователю User1. files GRANT INSERTION ON Students TO User1

При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки:

(1) вместо ключевого слова ON следовало использовать ключевое слово IN после слова INSERTION
(2) после названия таблицы пропущен список столбцов, в которые допускается вставка новых значений
(3) после ключевого слова TO пропущено ключевое слово USER
(4) вместо слова INSERTION следовало использовать слово INSERT
Выберите из предложенных вариантов самый строгий (т.е. надежный или не допускающий нарушений целостности сохранения или представления данных) уровень изоляции транзакций (ISOLATION LEVEL)
(1) REPEATABLE READ
(2) READ COMMITTED
(3) READ UNCOMMITTED
(4) SERIALIZABLE
Если выборка данных производится из нескольких таблиц, то это может указываться во фразе FROM следующим образом:
(1) таблица1 таблица2
(2) таблица1 AND таблица2
(3) таблица1 CROSS JOIN таблица2
(4) таблица1 INNER JOIN таблица2
(5) таблица1 OUTER JOIN таблица2
Реляционная операция разности множеств реализуется в команде SELECT с помощью
(1) знака "-" (минус) в выражении после слова SELECT
(2) конструкции SELECT ... WHERE ... IN (SELECT ...)
(3) конструкции SELECT ... WHERE ... NOT IN (SELECT ...)
(4) фразы EXCEPT
(5) фразы INTERSECT
Таблица t состоит из столбцов f1 и f2. Запрос SELECT f1, f2 FROM t эквивалентен запросу
(1) SELECT * FROM t
(2) SELECT *, f1, f2 FROM t
(3) SELECT ALL f1, f2 FROM t
(4) SELECT ALL FROM t
(5) SELECT DISTINCT * FROM t
Условие WHERE f NOT IN (d1, d2) эквивалентно условию
(1) f <> d1 OR f <> d2
(2) f <> d1 AND f <> d2
(3) f BETWEEN d1 AND d2
(4) NOT (f = d1 AND f = d2)
(5) NOT (f = d1 OR f = d2)
Требуется отобрать студентов, у которых не заполнен столбец с оценкой по математике (Math_scope). Выберите условие, соответствующее заданию.
(1) WHERE EMPTY(Math_scope)
(2) WHERE Math_scope = 0
(3) WHERE Math_scope = NONE
(4) WHERE Math_scope = NULL
(5) WHERE Math_scope IS NULL
Требуется вместо числовой оценки (Point), которая может принимать значения 2, 3, 4, 5, получить соответственно 'неудовлетворительно', 'удовлетворительно', 'хорошо', 'отлично'. Выберите фрагменты, соответствующие заданию.
(1) CASE Point WHEN 2 THEN 'неудовлетворительно' WHEN 3 THEN 'удовлетворительно' WHEN 4 THEN 'хорошо' ELSE 'отлично'
(2) CASE Point WHEN 3 THEN 'удовлетворительно' WHEN 2 THEN 'неудовлетворительно' WHEN 5 THEN 'отлично' WHEN 4 THEN 'хорошо' END
(3) CASE Point WHEN Point > 4 THEN 'отлично' WHEN Point > 3 THEN 'хорошо' WHEN Point > 2 THEN 'удовлетворительно' ELSE 'неудовлетворительно' END
(4) CASE WHEN Point = 2 THEN 'неудовлетворительно' WHEN Point = 3 THEN 'удовлетворительно' WHEN Point = 4 THEN 'хорошо' WHEN Point = 5 THEN 'отлично' END
(5) CASE WHEN Point < 3 THEN 'неудовлетворительно' WHEN Point < 4 THEN 'удовлетворительно' WHEN Point < 5 THEN 'хорошо' ELSE 'отлично' END
Укажите правильные варианты.
(1) условие WHERE выполняется перед группировкой
(2) условие WHERE может содержать итоговые функции
(3) условие HAVING выполняется после группировки
(4) условие HAVING не может содержать итоговые функции
(5) HAVING задает условие отбора группы строк, полученной в результате группирования
Аргументом функции COUNT может быть
(1) имя столбца, предваренное словом DISTINCT
(2) имя таблицы
(3) логическое условие
(4) символ "*" (звездочка)
(5) слово ALL
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char, NOT NULL), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)

Запрос SQL имеет вид:

SELECT Group_id, MAX(Math_scope) FROM Students WHERE Lang_scope > 3.5 GROUP BY Group_id

Данный запрос выводит

(1) для групп, в которых все студенты имеют оценку по иностранному языку более 3.5, - наибольшую оценку по математике в данной группе
(2) для всех групп, где есть студенты с оценкой по иностранному языку более 3.5, - наибольшую оценку по математике среди всех студентов группы
(3) для всех групп, где есть студенты с оценкой по иностранному языку более 3.5, - наибольшую оценку по математике среди студентов группы, имеющих по иностранному языку более 3.5 баллов
(4) идентификатор группы, в которой учится студент с самой высокой оценкой по математике из тех студентов, у кого оценка по иностранному языку более 3.5
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char, NOT NULL), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)

Требуется получить имена студентов с оценкой по математике выше средней.

Выберите варианты условия (вместо знака подчеркивания), соответствующие заданию.

SELECT Student_name FROM Students WHERE _______________
(1) Math_scope > ANY (SELECT AVG(Math_scope) FROM Students)
(2) Math_scope > AVG(Math_scope)
(3) Math_scope > AVG(Math_scope) FROM Students
(4) Math_scope > SELECT AVG(Math_scope) FROM Students
(5) Math_scope > (SELECT AVG(Math_scope) FROM Students)
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char, NOT NULL), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)

Требуется получить список студентов, для которых старостой (Head_stud_id - номер студента-старосты) является студент группы 12.

Выберите варианты запросов, соответствующие заданию.

(1) SELECT Student_name FROM Students WHERE Head_stud_id IN (SELECT Student_id FROM Students WHERE Group_id = 12)
(2) SELECT Student_name FROM Students WHERE Head_stud_id IN (SELECT Head_stud_id FROM Students WHERE Group_id = 12)
(3) SELECT Student_name FROM Students WHERE EXISTS (SELECT * FROM Students s WHERE s.Head_stud_id = Students.Student_id AND Students.Group_id = 12)
(4) SELECT Student_name FROM Students WHERE EXISTS (SELECT * FROM Students s WHERE Students.Head_stud_id = s.Student_id AND s.Group_id = 12)
(5) SELECT Student_name FROM Students WHERE Head_stud_id IN ANY (SELECT Head_stud_id FROM Students WHERE Group_id = 12)
(6) SELECT Student_name FROM Students WHERE Head_stud_id IN ALL (SELECT Student_id FROM Students WHERE Group_id = 12)
Отношение Groups имеет схему:files Groups: Group_id (int PK), Grade_level (int), Specialty_id (int), Head_stud_id (int) Отношение Specialties имеет схему: files Specialties: Specialty_id (int, PK), Specialty_title, Specialty_rating

Требуется получить номер группы и название специальности этой группы.

Выберите варианты фрагмента запроса (вместо знака подчеркивания), соответствующие заданию.

SELECT Group_id, Specialty_title FROM ________________________
(1) Specialties CROSS JOIN Groups
(2) Specialties NATURAL JOIN Groups
(3) Specialties JOIN Groups USING (Specialty_id)
(4) Specialties INNER JOIN Groups ON Specialties.Specialty_id = Groups.Specialty_id
(5) Specialties LEFT OUTER JOIN Groups ON Specialties.Specialty_id = Groups.Specialty_id
(6) Specialties, Groups
Пусть имеется таблица t1 со схемой t1: (f1 (varchar), f2 (integer)) и таблица t2 с такой же схемой.

Требуется соединить таблицы t1 и t2 по столбцу f2.

Выберите фрагменты, соответствующие заданию.

(1) t1 INNER JOIN t2 ON f2
(2) t1 INNER JOIN t2 ON t1.f2 = t2.f2
(3) t1 JOIN t2 USING (f2)
(4) t1 JOIN t2 USING t1.f2 = t2.f2
(5) t1 NATURAL JOIN t2 ON f2
(6) t1 NATURAL JOIN t2 USING (f2)
Укажите фрагменты (вместо знака подчеркивания), не вызывающие ошибок, при условии что столбец f в таблице t1 и столбец f в таблице t2 имеют тип данных INTEGER. t1 INNER JOIN t2 ___________
(1) ON f
(2) ON f > 4 WHERE t1.f = t2.f
(3) ON t1.f < t2.f
(4) ON t1.f = t2.f
(5) ON t1.f = t2.f AND f > 4
(6) WHERE t1.f = t2.f AND f > 4
Таблица t1 имеет столбцы f1 (varchar) и f2 (integer). Запрос SQL имеет следующий вид: SELECT * FROM t1 UNION SELECT * FROM t2 Данный запрос не вызовет ошибки, если таблица t2 имеет схему:
(1) t2: f1 (varchar)
(2) t2: f2 (integer)
(3) t2: f1 (varchar), f2 (integer)
(4) t2: f1 (char), f2 (integer)
(5) t2: s1 (varchar), s2 (integer)
(6) t2: f1 (varchar), f2 (integer), f3 (date)
Оператор EXCEPT реализует реляционную операцию
(1) выборки
(2) деления
(3) пересечения
(4) проекции
(5) разности
Какие из перечисленных типов данных не относятся к символьным типам:
(1) VARCHAR2
(2) REAL
(3) CHAR
(4) VARCHAR
(5) STRING

Непосредственно после ключевого слова INSERT может следовать:

(1) SELECT
(2) INTO TABLE
(3) INTO
(4) IN
(5) VALUES
Отношение Groups имеет схему:files Groups: Group_id (int PK), Grade_level (int), Specialty_id (int FK), Head_stud_id (int)

Отношение Groups1 является пустым и имеет схему:

Groups1: Group_id (int PK), Grade_level (int), Specialty_id (int FK), Head_stud_id (int)

Запрос SQL имеет вид:

INSERT INTO TABLE Groups1 (SELECT Group_id, Specialty_id, Grade_level, 12 FROM Groups)

При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Выберите действие, выполнение которого позволит устранить ошибку:

(1) заменить в подзапросе SELECT значение 12 на значение Head_stud_id
(2) удалить скобки в подзапросе SELECT
(3) удалить слово TABLE во фразе INSERT
(4) добавить ключевое слово AS перед подзапросом
Отношение Groups имеет схему:files Groups: Group_id (int PK), Grade_level (int), Specialty_id (int FK), Head_stud_id (int)

Запрос SQL предназначен для вставки в таблицу Groups новой строки и имеет вид:

INSERT INTO Groups (Group_id, Head_stud_id) SELECT 10, 55.4

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

(1) в таблицу будет вставлена строка
Group_idGroup_gradeSpecialty_idHead_stud_id
10NULLNULL55.4
(2) в таблицу будет вставлена строка
Group_idGroup_gradeSpecialty_idHead_stud_id
10NULLNULL56
(3) в таблицу будет вставлена строка
Group_idGroup_gradeSpecialty_idHead_stud_id
10NULLNULL55
(4) Сервер БД сгенерирует ошибку, и операция будет отменена
(5) в таблицу будет вставлена строка
Group_idGroup_gradeSpecialty_idHead_stud_id
10NULLNULLNULL
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)

и состоит из следующих кортежей:

Student_idStudent_nameHead_stud_idMath_scopeLang_scopeGroup_id
11Scott155.04.310
10TomNULL4.05.0NULL

Запрос SQL имеет вид:

INSERT INTO Students (Student_id, Math_scope, Student_name) VALUES (12, ____ ’Allen’)

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают безошибочное выполнение запроса

(1) 4.5-0.6,
(2) ничего не вставлять
(3) 3.3
(4) NULL,
(5) DEFAULT,
Отношение Groups имеет схему:files Groups: Group_id (int PK), Grade_level (int), Specialty_id (int FK), Head_stud_id (int)

Отношение Groups1 является пустым и имеет схему:

Groups1: Group_id (int PK), Grade_level (int), Specialty_id (int FK), Head_stud_id (int)

Запрос SQL имеет вид:

INSERT INTO Groups1 (Group_id, Grade_level, Specialty_id) SELECT Group_id, Grade_level, ’22,2’ FROM Groups WHERE Group_id=10 ORDER BY Grade_level

В результате выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину возникновения ошибки:

(1) выражение ORDER BY недопустимо в подзапросе, использующемся в операторе INSERT
(2) последнее выражение во фразе SELECT подзапроса не является корректным названием столбца
(3) строковая константа во фразе SELECT подзапроса не может быть преобразована в значение типа int
(4) подзапрос не заключен в скобки
Оператор UPDATE:
(1) является оператором DDL
(2) позволяет изменять несколько строк за один запрос
(3) может включать подзапросы во фразе SET
(4) является оператором DCL
(5) может включать подзапросы во фразе WHERE
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)

Запрос предназначен для снижения баллов на 20% по математике (Math_scope) и ин. языку (Lang_scope) среди студентов учебной группы №10.

UPDATE Students ____ Math_scope = Math_scope*0.8_________ Lang_scope = Lang_scope*0.8 ____ Group_id = 10

Какие ключевые слова следует вставить вмеcто знаков подчеркивания для получения корректного запроса, решающего поставленную задачу.

(1) Первый фрагмент: COLUMNS; второй фрагмент: cимвол ","; третий фрагмент: WHEN
(2) Первый фрагмент: ASSIGN; второй фрагмент: AND; третий фрагмент: IF
(3) Первый фрагмент: SET; второй фрагмент: cимвол ","; третий фрагмент: WHERE
(4) Первый фрагмент: SET; второй фрагмент: AND; третий фрагмент: WHERE
(5) Первый фрагмент: SET; второй фрагмент: cимвол ","; третий фрагмент: WHEN
Отношение Groups имеет схему:files Groups: Group_id (int PK), Grade_level (int), Specialty_id (int FK), Head_stud_id (int)

Запрос предназначен для изменения специальности группы № 10 на специальность с идентификатором Specialty_id = 12 и назначения группе № 30 нового старосты Head_stud_id – студента с номером 17.

UPDATE Groups _________________ _________________

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

(1) первый фрагмент: SET Specialty_id = CASE Group_id WHEN 10 THEN 12 ELSE Specialty_id END, Head_stud_id = CASE Group_id WHEN 30 THEN 17 ELSE Head_stud_id END второй фрагмент: ничего не нужно
(2) первый фрагмент: SET Specialty_id = 12, Head_stud_id = 17 второй фрагмент: WHERE Group_id = 10, 30
(3) первый фрагмент: SET Specialty_id = 12, Head_stud_id = 17 второй фрагмент: WHERE Group_id = 10, Group_id = 30
(4) первый фрагмент: SET Specialty_id = CASE Group_id WHEN 10 THEN 12 END, Head_stud_id = CASE Group_id WHEN 30 THEN 17 END второй фрагмент: ничего не нужно
(5) первый фрагмент: CASE Group_id WHEN 10 THEN SET Specialty_id = 12, WHEN 30 THEN SET Head_stud_id = 17 END второй фрагмент: ничего не нужно
Отношение Students состоит из кортежей:files
Student_idStudent_nameHead_stud_idMath_scopeLang_scopeGroup_id
12Alex284.210.010
11Tom153.98.020

Отношение Students1 состоит из кортежей:

Student_idStudent_nameHead_stud_idMath_scopeLang_scopeGroup_id
13Alexis124.612.010
15Li154.96.020

Запрос SQL имеет вид:

UPDATE Students SET Lang_scope = (SELECT MAX (Lang_scope)*1.1 FROM Students1) WHERE Group_id IN (SELECT Group_id FROM Students1 GROUP BY Group_id HAVING MIN (Lang_scope) > 6.0)

Среди предложенных вариантов выберите, каким, в итоге, останется отношение Students.

(1) отношение Students останется без изменений, т.к. запрос содержит ошибку, и выполнен не будет
(2)
Student_idStudent_nameHead_stud_idMath_scopeLang_scopeGroup_id
12Alex284.213.210
11Tom153.98.020
(3)
Student_idStudent_nameHead_stud_idMath_scopeLang_scopeGroup_id
12Alex284.211.010
11Tom153.98.020
(4)
Student_idStudent_nameHead_stud_idMath_scopeLang_scopeGroup_id
12Alex284.211.010
11Tom153.98.020
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)

Отношение Groups имеет схему:

Groups: Group_id (int PK), Grade_level (int), Specialty_id (int FK), Head_stud_id (int)

Запрос предназначен для удаления записей о студентах пятого курса (Grade_level).

DELETE _________Students ________________________

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

(1) Первый фрагмент: FROM TABLE второй фрагмент: WHERE Group_id = (SELECT Group_id FROM Groups WHERE Grade_level = 5)
(2) Первый фрагмент: FROM второй фрагмент: WHERE Group_id IN (SELECT Group_id FROM Groups WHERE Grade_level = 5)
(3) Первый фрагмент: FROM второй фрагмент: WHEN Group_id IN (SELECT Group_id FROM Groups WHERE Grade_level = 5)
(4) Первый фрагмент: FROM TABLE второй фрагмент: IF Group_id IN (SELECT Group_id FROM Groups WHERE Grade_level = 5)

Оператор CREATE TABLE:

(1) является оператором DML (язык манипулирования данными)
(2) является оператором DDL (язык определения данных)
(3) может включать определения ограничений ссылочной целостности
(4) может включать фразу ORDER BY
(5) может включать фразу TEMPORARY
Какие из перечисленных выражений могут использоваться для определения полей, которые не могут принимать повторяющиеся значения, в предложении CREATE TABLE:
(1) Book_id FLOAT IS NOT NULL
(2) Book_id FLOAT DIFFERENT
(3) Book_id FLOAT PRIMARY KEY
(4) Book_id FLOAT UNIQUE

Ограничение PRIMARY KEY:

(1) включает в себя ограничение NOT NULL
(2) должно быть явно задано для любой таблицы (является обязательным)
(3) включает в себя ограничение UNIQUE
(4) назначается для столбца (или группы столбцов), который будет содержать значения, однозначно идентифицирующие каждую строку отношения
(5) не может задаваться на уровне отдельных столбцов
Какое из перечисленных ограничений не может определяться на уровне целой таблицы:
(1) NOT NULL
(2) CHECK
(3) UNIQUE
(4) PRIMARY KEY
(5) FOREIGN KEY
Для создания таблицы Students использовалась следующая команда:files CREATE TABLE Students (Student_id INT PRIMARY KEY, Student_name VARCHAR(20), Head_stud_id INT, Math_scope FLOAT NOT NULL, Lang_scope FLOAT NOT NULL, Group_id INT REFERENCES Groups (Group_id) ON DELETE CASCADE DEFAULT 20 )

Отношение Students состоит из кортежей:

Student_idStudent_nameHead_stud_idMath_scopeLang_scopeGroup_id
12Alex283.510.010

Отношение Groups состоит из кортежей

Group_idGroup_gradeHead_stud_idSpecialty_id
10315123

Запрос SQL имеет вид:

DELETE FROM Groups WHERE Group_id=10

Укажите, каким в результате выполнения данного запроса окажется отношение Students:

(1) отношение Students останется без изменений
(2)
Student_idStudent_nameHead_stud_idMath_scopeLang_scopeGroup_id
12Alex283.510.0NULL
(3)
Student_idStudent_nameHead_stud_idMath_scopeLang_scopeGroup_id
12Alex283.510.020
(4) отношение Students окажется пустым
Запрос предназначен для создания таблицы Students с ограничением целостности, гарантирующим, что сумма в столбцах Math_scope и Lang_scope не будет меньше 4.files CREATE TABLE Students (Student_id INT PRIMARY KEY, Student_name VARCHAR(20), Math_scope FLOAT NOT NULL, Lang_scope FLOAT NOT NULL _____________________ )

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:

(1) CHECK (Math_scope + Lang_scope >= 4)
(2) , CHECK (Math_scope + Lang_scope >= 4)
(3) , CONSTRAINT chek_total_bal CHECK (Math_scope + Lang_scope >= 4)
(4) , CHECK Math_scope + Lang_scope >= 4
(5) , CONSTRAINT CHECK (Math_scope + Lang_scope >= 4)
Для создания таблицы Students использовалась следующая команда:files CREATE TABLE Students (Student_id INT PRIMARY KEY, Student_name VARCHAR(20), Math_scope FLOAT NOT NULL, Group_id INT REFERENCES Groups (Group_id) ON DELETE CASCADE DEFAULT 10 )

Отношение Groups состоит из кортежей

Group_idGroup_gradeHead_stud_idSpecialty_id
10315123

Запрос SQL имеет вид:

INSERT INTO Students (Student_id, Student_name, Math_scope, Group_id) VALUES (14, DEFAULT, '2.98', 20)

В результате выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину ошибки, при условии, что студента с номером 14 ранее не существовало:

(1) во фразе VALUES недопустимо использование ключевого слова DEFAULT, так как для поля Student_name не задано значение по умолчанию
(2) невозможно выполнить преобразование строки '2.98' в значение типа FLOAT
(3) значение 20 во фразе VALUES в данном случае является недопустимым
(4) ключевое слово INTO может использоваться только в словосочетании INTO TABLE

Оператор DROP во фразе ALTER TABLE может использоваться для:

(1) удаления столбцов в существующей таблице
(2) удаления значений в столбцах существующей таблицы
(3) удаления именованных ограничений в существующей таблице
(4) удаления индексов произвольных столбцов
Отношение Student_grade имеет схему:files Student_grade: Grade_id (int PK), Lowest_total_scope (float), Highest_total_scope (float)

Отношение Students имеет схему:

Students: Student_id (int, PK), Student_name (varchar (30)), Head_stud_id (int), Math_scope (float, NOT NULL), Lang_scope (float, NOT NULL), Group_id (int, FK)

Для создания представления, в которое должны попасть только имена студентов с рейтингом (Grade_id), равным 1, используется запрос:

CREATE VIEW view1 ___ (SELECT Student_name FROM Students, Student_grade WHERE Math_scope + Lang_scope <= Highest_total_scope AND Math_scope + Lang_scope >= Lowest_total_scope AND Grade_id = 1)

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают безошибочное выполнение операции:

(1) AS
(2) ничего
(3) BASING ON
(4) AS SUBQUERY
(5) WITH CHECK OPTION
Отношение Students имеет схему:files Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)

Для создания индекса столбца Student_name используется запрос:

CREATE ______________

Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает безошибочное выполнение запроса и получение требуемого результата:

(1) INDEX FOR Students (Student_name)
(2) INDEX index1 ON Students (Student_name)
(3) INDEX ON Students.Student_name
(4) INDEXES index1 FOR Students (Student_name)
Выберите из предложенных вариантов фразу, которая может использоваться в операторе GRANT для предоставления возможности пользователям, которым назначаются некоторые привилегии, передавать эти привилегии другим пользователям:
(1) WITH ADMIN OPTION
(2) WITH GRANT OPTION
(3) CAN GRANT
(4) CAN REGRANT PERMISSIONS
Запрос предназначен для предоставления привилегии на вставку данных в таблицу Students зарегистрированному в базе данных пользователю User1. files GRANT INSERT ON Students TO User1 WITH ADMIN OPTION

При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки:

(1) вместо предлога ON следовало использовать предлог IN после слова INSERT
(2) вместо слова INSERT следовало использовать слово INSERTION
(3) фраза WITH ADMIN OPTION является недопустимой
(4) вместо предлога TO следовало использовать предлог FOR
Укажите режим изоляции транзакций (ISOLATION LEVEL), который позволяет осуществлять чтение строк, измененных незафиксированными транзакциями.
(1) REPEATABLE READ
(2) READ COMMITTED
(3) READ UNCOMMITTED
(4) SERIALIZABLE
Обязательными фразами в запросе на выборку данных являются:
(1) FROM
(2) JOIN
(3) ORDER
(4) SELECT
(5) WHERE
Фраза SELECT реализует реляционную операцию
(1) выборки
(2) объединения
(3) пересечения
(4) проекции
(5) разности
Реляционная операция произведения множеств реализуется в команде SQL
(1) перечнем имен во фразе FROM
(2) перечнем имен во фразе SELECT
(3) с помощью выражения, включающего знак "*" (умножить), во фразе SELECT
(4) с помощью фразы CROSS JOIN
(5) с помощью фразы JOIN ... USING
Фраза WHERE команды SELECT реализует реляционную операцию
(1) выборки
(2) объединения
(3) проекции
(4) произведения
(5) соединения
С предикатом LIKE используются символы-маски
(1) "_" (подчеркивание)
(2) "*" (звездочка)
(3) "!" (восклицательный знак)
(4) "?" (знак вопроса)
(5) "%" (процент)
Выберите допустимые виды оператора SELECT.
(1) SELECT ... FROM ... ORDER BY ...
(2) SELECT ... FROM ... WHERE ... ORDER BY ... GROUP BY ...
(3) SELECT ... FROM ... UNION SELECT ... FROM ...
(4) SELECT ... FROM ... GROUP BY ... WHERE ... ORDER BY ...
Фраза GROUP BY
(1) будет вызывать ошибку, если указанный в ней столбец отсутствует в списке SELECT
(2) может содержаться в команде SELECT одновременно с фразами HAVING и WHERE
(3) следует перед фразой WHERE
(4) может привести к уменьшению количества получаемых строк по сравнению с исходной таблицей
(5) эквивалентна фразе ORDER BY
Количество строк возвращает функция
(1) AVG
(2) COUNT
(3) NUM
(4) QTY
(5) SUM
Отношение Worker имеет схему:files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float), Commission_pct (float), Branch_id (int), Hire_date (timestamp)

Требуется получить номера отделов (Branch_id), в которых нет зарплаты менее 1000. Выберите из предложенных вариантов те, которые обеспечивают выполнение задания.

(1) SELECT DISTINCT Branch_id FROM Worker WHERE Salary >= 1000
(2) SELECT Branch_id FROM Worker GROUP BY Branch_id HAVING Salary >= 1000
(3) SELECT DISTINCT Branch_id FROM Worker WHERE Branch_id NOT IN (SELECT Branch_id FROM Worker WHERE Salary < 1000)
(4) SELECT Branch_id FROM Worker GROUP BY Branch_id HAVING MIN(Salary) >= 1000
(5) SELECT DISTINCT Branch_id FROM Worker WHERE Salary >= 1000 GROUP BY Branch_id HAVING MAX(Salary) >= 1000
Отношение Worker имеет схему:files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float), Commission_pct (float), Branch_id (int), Hire_date (timestamp)

Требуется получить наименьшую из средних зарплат по отделам. Выберите из предложенных вариантов те, которые обеспечивают выполнение задания.

(1) SELECT MIN(AVG(Salary)) FROM Worker
(2) SELECT MIN(SELECT AVG(Salary) FROM Worker)
(3) SELECT MIN(Salary) FROM (SELECT AVG(Salary) FROM Worker GROUP BY Branch_id) t
(4) SELECT MIN(Sal) FROM (SELECT AVG(Salary) Sal FROM Worker GROUP BY Branch_id) t
Отношение Worker имеет схему:files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float, NOT NULL), Commission_pct (float), Branch_id (int), Hire_date (timestamp) Отношение Branch имеет схему:files Branch: Branch_id (int PK), Branch_title (varchar (30)), Location_id (varchar (20))

Требуется получить список отделов, в которых нет сотрудника с именем Alex. Выберите варианты запросов, соответствующие заданию.

(1) SELECT Branch_id FROM Worker WHERE Worker_name <> 'Alex'
(2) SELECT * FROM Branch WHERE Branch_id <> (SELECT Branch_id FROM Worker WHERE Worker_name = 'Alex')
(3) SELECT * FROM Branch WHERE Branch_id NOT IN (SELECT Branch_id FROM Worker WHERE Worker_name = 'Alex')
(4) SELECT * FROM Branch WHERE Branch_id <> ANY (SELECT Branch_id FROM Worker WHERE Worker_name = 'Alex')
(5) SELECT * FROM Branch WHERE Branch_id <> ALL (SELECT Branch_id FROM Worker WHERE Worker_name = 'Alex')
Фраза FROM t1, t2
(1) недопустима
(2) аналогична фразе FROM t1 INNER JOIN t2
(3) эквивалентна фразе FROM t1 CROSS JOIN t2
(4) эквивалентна фразе FROM t1 FULL OUTER JOIN t2
(5) реализует реляционную операцию объединения
(6) выполняет реляционную операцию произведения
Операциями внутреннего соединения таблиц являются:
(1) CROSS JOIN
(2) FULL JOIN
(3) JOIN ... USING
(4) NATURAL JOIN
(5) RIGHT JOIN
Внешнее соединение двух таблиц означает, что
(1) в результирующем наборе будет строк не менее, чем при аналогичном внутреннем соединении таблиц
(2) в результирующем наборе сохраняются записи из одной таблицы, которым не нашлось соответствия в другой таблице
(3) исходные таблицы должны быть различными
(4) одна таблица берется из текущей базы данных, а вторая - из некоторой внешней базы данных
(5) столбцы первой таблицы будут добавлены перед первым или после последнего столбца второй таблицы
Фраза UNION команды SELECT реализует реляционную операцию
(1) выборки
(2) объединения
(3) проекции
(4) произведения
(5) соединения
Отношение Worker имеет схему:files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float, NOT NULL), Commission_pct (float), Branch_id (int), Hire_date (timestamp)

Требуется получить в одном столбце имена сотрудников 10-го отдела и их менеджеров. Выберите варианты запросов, соответствующие заданию.

(1) SELECT Worker_name FROM Worker UNION (SELECT b.Worker_name FROM Worker a, Worker b WHERE a.Manager_id = b.Worker_id) WHERE Branch_id = 10
(2) SELECT Worker_name FROM Worker WHERE Branch_id = 10 UNION (SELECT b.Worker_name FROM Worker a, Worker b WHERE a.Manager_id = b.Worker_id AND a.Branch_id = 10)
(3) SELECT b.Worker_name FROM Worker a INNER JOIN Worker b ON a.Manager_id = b.Worker_id AND a.Branch_id = 10 UNION SELECT Worker_name FROM Worker WHERE Branch_id = 10
(4) SELECT a.Worker_name, b.Worker_name FROM Worker a, Worker b WHERE a.Manager_id = b.Worker_id AND a.Branch_id = 10
(5) SELECT Worker_name FROM Worker WHERE Branch_id = 10 UNION SELECT b.Worker_name FROM Worker a, Worker b WHERE a.Manager_id = b.Worker_id AND a.Branch_id = 10
Какие из перечисленных типов данных относятся к символьным типам:
(1) TIMESTAMP
(2) CHAR
(3) NCHAR
(4) STRING
(5) VARCHAR

Оператор INSERT:

(1) не допускает использование подзапросов
(2) является оператором DML
(3) всегда приводит к завершению транзакции
(4) используется для вставки одной или нескольких строк в таблицу
(5) может применяться для внесения изменений в существующие строки
Отношение Branch имеет схему:files Branch: Branch_id (int PK), Branch_title (varchar (30)), Location_id (varchar (20))

Запрос SQL предназначен для вставки в таблицу Branch новой строки и имеет вид:

INSERT INTO Branch VALUES (10, 11, ‘Research’)

Среди перечисленных вариантов укажите, каким будет результат выполнения приведенной выше операции при условии, что отдела с номером 10 ранее не существовало:

(1) в таблицу будет вставлена строка
Branch_idBranch_titleLocation_id
10Research11
(2) сервер БД сгенерирует ошибку, и операция будет отменена
(3) в таблицу будет вставлена строка
Branch_idBranch_titleLocation_id
1011NULL
(4) в таблицу будет вставлена строка
Branch_idBranch_titleLocation_id
1011Research
Отношение Branch имеет схему:files Branch: Branch_id (int PK), Branch_title (varchar (30)), Location_id (int)

Запрос SQL предназначен для вставки в таблицу Branch новой строки и имеет вид:

INSERT INTO Branch _________ ________ (12, ‘Sales’, 15)

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

(1) первый фрагмент: IN COLUMNS (Branch_id, Branch_title, Location_id) второй фрагмент: VALUES
(2) первый фрагмент: ничего не нужно второй фрагмент: ничего не нужно
(3) первый фрагмент: ничего не нужно второй фрагмент: VALUES
(4) первый фрагмент: (Branch_id, Branch_title, Location_id) второй фрагмент: ничего не нужно
(5) первый фрагмент: (Branch_id, Branch_title, Location_id) второй фрагмент: VALUES
Отношение Worker имеет схему:files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)

и состоит из следующих кортежей:

Worker_idWorker_nameManager_idSalaryCommission_pctBranch_idHire_date
11Tom1510000.81020.05.98
12Alex17900NULL2021.06.98

Запрос SQL имеет вид:

INSERT INTO Worker (Worker_id, Worker_name, Salary) SELECT 14, ‘Martin’, ‘1000,5’

При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки:

(1) во фразе INSERT не хватает ключевого слова TABLE, которое должно следовать за ключевым словом INTO
(2) во второй строке вместо слова SELECT следовало использовать слово VALUES
(3) во фразе SELECT определены значения не для всех столбцов таблицы Worker
(4) список значений столбцов для новой строки не заключен в скобки
(5) невозможно выполнить преобразование строковой константы ‘1000,5’ в значение типа float
Отношение Worker имеет схему:files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)

Отношение Worker1 имеет схему:

Worker1: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)

Запрос SQL предназначен для копирования информации о сотрудниках отдела №20 из таблицы Worker в таблицу Worker1:

INSERT INTO Worker1 (Worker_id, Worker_name, Salary) ___________________

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

(1) VALUES (Worker_id, Worker_name, Salary FROM Worker WHERE Branch_id=20)
(2) SELECT Worker_id, Worker_name, Salary FROM Worker WHERE Branch_id=20
(3) (SELECT Worker_id, Worker_name, Salary FROM Worker WHERE Branch_id=20)
(4) SELECT * FROM Worker WHERE Group_id=20
(5) AS SELECT Worker_id, Worker_name, Salary FROM Worker WHERE Branch_id=20

Для задания новых значений столбцам в запросе UPDATE обязательно используется:

(1) фраза SET
(2) фраза SET COLUMN
(3) фраза COLUMN
(4) фраза WHERE
(5) фраза SET VALUES
Отношение Worker имеет схему:files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)

Запрос предназначен для снижения на 10% оклада (Salary) и премии (Commission_pct) сотрудникам отдела №10.

UPDATE Worker SET _______________ WHERE Branch_id = 10

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

(1) Salary = Salary*0.9 AND Commission_pct = Commission_pct*0.9
(2) Salary = Salary*0.9, Commission_pct = Commission_pct*0.9
(3) Salary*0.9 AND Commission_pct*0.9
(4) Salary, Commission_pct = (Salary*0.9, Commission_pct*0.9)
Отношение Branch имеет схему:files Branch: Branch_id (int PK), Branch_title (varchar (30)), Location_id (varchar (20))

Запрос предназначен для перевода отдела № 10 в новое место расположения (Location_id=12) и задания отделу № 20 нового названия – Consulting.

UPDATE Branch SET________________ WHERE_____________

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

(1) первый фрагмент: VALUES (Location_id = 12, Branch_title = ‘Consulting’) второй фрагмент: Branch_id = 10, 20
(2) первый фрагмент: Location_id = CASE Branch_id WHEN 10 THEN 12 END, Branch_title = CASE Branch_id WHEN 20 THEN ‘Consulting’ END второй фрагмент: ничего не нужно
(3) первый фрагмент: Location_id = 12 IF Branch_id = 10, Branch_title = ‘Consulting’ IF Branch_id = 20 второй фрагмент: ничего не нужно
(4) первый фрагмент: Location_id = 12 AND Branch_title = ‘Consulting’ второй фрагмент: Branch_id = 10, Branch_id= 20
(5) ничего из перечисленного
Отношение Worker имеет схему:files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)

Запрос имеет вид:

UPDATE Worker SET Salary = AVG (Salary), Manager_id = 11 WHERE Worker_name LIKE ‘J%’

При выполнении запроса сервера БД генерирует ошибку. Выберите действия, выполнение которых позволит исправить ошибку.

(1) устранить групповую функцию во фразе SET (т.е. использовать вместо нее простое арифметическое выражение или числовую константу)
(2) соединить выражения для столбцов во фразе SET союзом AND вместо запятой
(3) удалить знак процента в строковом шаблоне в условии WHERE
(4) поместить групповую функцию во фразе SET в подзапрос: (SELECT функция FROM Worker)
(5) вместо ключевого слова SET использовать словосочетание SET TABLE
Отношение Worker имеет схему:files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)

Запрос предназначен для удаления записей о сотрудниках отдела №30.

DELETE _________Worker ____________ Branch_id = 30

Какие ключевые слова следует вставить вместо знаков подчеркивания для получения корректного запроса, решающего поставленную задачу.

(1) Первый фрагмент: FROM, второй фрагмент: WHERE
(2) Первый фрагмент: ничего, второй фрагмент: WHERE
(3) Первый фрагмент: ROWS FROM, второй фрагмент: IF
(4) Первый фрагмент: FROM TABLE второй фрагмент: WHERE
(5) Первый фрагмент: FROM, второй фрагмент: WHEN
К столбцам какого типа при создании таблицы с помощью оператора CREATE TABLE могут применяться параметры: precision, scale (точность, масштаб)?
(1) float, real
(2) int, bit
(3) decimal, smallint
(4) numeric, decimal
Какие из перечисленных выражений могут использоваться для определения полей со значением по умолчанию в предложении CREATE TABLE:
(1) Branch_id INT DEFAULT (20)
(2) Branch_id INT 20 BY DEFAULT
(3) Branch_id INT DEFAULT VALUE = 20
(4) Branch_id INT WITH DEFAULT 20
(5) Branch_id INT DEFAULT 20

Ограничение PRIMARY KEY:

(1) абсолютно равнозначно комбинации ограничений NOT NULL и UNIQUE
(2) может встречаться несколько раз в определении одной таблицы
(3) является ограничением ссылочной целостности
(4) назначается для столбца (или группы столбцов), который будет содержать значения, однозначно идентифицирующие каждую строку отношения
(5) может задаваться на уровне отдельного столбца или всей таблицы
Какие из перечисленных ограничений могут определяться на уровне целой таблицы:
(1) CHECK
(2) UNIQUE
(3) NOT NULL
(4) PRIMARY KEY
Для создания таблицы Worker использовалась следующая команда:files CREATE TABLE Worker (Worker_id INT PRIMARY KEY, Manager_id INT, Hire_date TIMESTAMP, Worker_name VARCHAR(20), Salary FLOAT NOT NULL, Commission_pct FLOAT NOT NULL, Branch_id INT REFERENCES Branch(Branch_id) ON DELETE SET NULL DEFAULT 20 )

Отношение Worker состоит из кортежей:

Worker_idWorker_nameManager_idSalaryCommission_pctBranch_idHire_date
11Tom1510000.81020.05.98

Отношение Branch состоит из следующих кортежей:

Branch_idBranch_titleLocation_id
10Accounting11
20Accounting12

Запрос SQL имеет вид:

DELETE FROM Branch WHERE Branch_id=10

Укажите, каким в результате выполнения данного запроса окажется отношение Worker:

(1) отношение Worker останется без изменений
(2)
Worker_idWorker_nameManager_idSalaryCommission_pctBranch_idHire_date
11Tom1510000.82020.05.98
(3)
Worker_idWorker_nameManager_idSalaryCommission_pctBranch_idHire_date
11Tom1510000.8NULL20.05.98
(4) отношение Worker окажется пустым
Запрос предназначен для создания таблицы Worker с ограничением целостности, гарантирующим, что сумма (Salary + Salary*Commission_pct) не будет больше 5000.files CREATE TABLE Worker (Worker_id INT PRIMARY KEY, Manager_id INT, Hire_date TIMESTAMP, Worker_name VARCHAR(20), Branch_id INT, Salary FLOAT NOT NULL, Commission_pct FLOAT NOT NULL________________ )

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:

(1) CHECK (Salary + Salary*Commission_pct <=5000)
(2) CHECK Salary + Salary*Commission_pct <=5000
(3) , CONSTRAINT chk_sal CHECK (Salary + Salary*Commission_pct <=5000)
(4) , CHECK (Salary + Salary*Commission_pct <=5000)
(5) , CONSTRAINT CHECK (Salary + Salary*Commission_pct <=5000)
Для создания таблицы Worker использовалась следующая команда:files CREATE TABLE Worker (Worker_id INT PRIMARY KEY, Manager_id INT PRIMARY KEY, Hire_date TIMESTAMP, Worker_name VARCHAR(20), Branch_id INT REFERENCES Branch, Salary DECIMAL(3, 2) NOT NULL, Commission_pct FLOAT NOT NULL )

В результате выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину возникновения ошибки, при условии, что первичным ключом в таблице Branch является столбец Branch_id

(1) в определении таблицы не может дважды встречаться определение ограничения PRIMARY KEY
(2) в определении внешнего ключа таблицы Worker не указывается явно соответствующий ему первичный ключ таблицы Branch
(3) некорректное определение типа столбца Salary
(4) в определении внешнего ключа не хватает словосочетания FOREIGN KEY
Для создания таблицы Worker использовалось следующее определение:files CREATE TABLE Worker (Worker_id INT PRIMARY KEY, Manager_id INT, Hire_date TIMESTAMP, Worker_name VARCHAR(20), Salary FLOAT NOT NULL, Commission_pct FLOAT NOT NULL, Branch_id INT REFERENCES Branch (Branch_id) ON DELETE SET NULL DEFAULT 20 )

Укажите, какие фразы предложения ALTER TABLE позволят задать значение по умолчанию столбцу Salary

(1) ADD DEFAULT 800 TO Salary
(2) ADD CONSTRAINT DEFAULT 800 FOR Salary
(3) ALTER COLUMN Salary FLOAT NOT NULL DEFAULT = 800
(4) MODIFY COLUMNS (Salary FLOAT NOT NULL DEFAULT = 800)
(5) ALTER COLUMN Salary SET DEFAULT 800
Отношение Branch имеет схему:files Branch: Branch_id (int PK), Branch_title (varchar (30)), Location_id (varchar (20))

Отношение Worker имеет схему:

Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)

Для создания представления, в которое должны попасть только имена сотрудников, работающих в отделе ACCOUNTING, используется запрос:

CREATE VIEW view1 ___ (SELECT Worker_name FROM Worker w, Branch b WHERE w.Branch_id = b.Branch_id AND b.Branch_title LIKE ‘ACCOUNTING’ )

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают безошибочное выполнение операции:

(1) Ничего
(2) ON
(3) FROM
(4) AS
(5) WITH CHECK OPTION
Отношение Worker имеет схему: files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)

Для создания индекса столбца таблицы Worker_name таблицы Worker, используется запрос:

CREATE ______________

Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает безошибочное выполнение запроса и получение требуемого результата:

(1) INDEX index1 ON Worker (Worker_name)
(2) INDEX TO Worker (Worker_name)
(3) INDEX index1 ON TABLE Worker COLUMN Worker_name
(4) INDEXES index1 FOR Worker (Worker_name)
Запрос предназначен для того, чтобы разрешить обновление столбца Salary таблицы Worker зарегистрированному пользователю базы данных User1. files ____________________User1

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

(1) PERMIT UPDATE ON Worker (Salary) TO User1
(2) GRANT TO User1 UPDATE ON Worker (Salary)
(3) GRANT UPDATE TABLE Worker COLUMN Salary TO User1
(4) PERMIT UPDATE Worker (Salary) FOR User1
(5) GRANT UPDATE(Salary) ON Worker TO User1
Запрос выполняется предназначен для того, чтобы запретить вставку данных в таблицу Worker зарегистрированному в базе данных пользователю User1. files DROP INSERT ON Worker FROM User1

При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Выберите действие, выполнение которого позволит исправить ошибку и добиться требуемого результата

(1) заменить слово INSERT словом INSERTION
(2) заменить предлог FROM предлогом TO
(3) заменить слово DROP словом DENY и заменить предлог FROM предлогом TO
(4) заменить слово DROP словом REVOKE
(5) заменить слово DROP словом DELETE
Укажите режимы изоляции транзакций (ISOLATION LEVEL), которые запрещают осуществлять обновление строк, считанных незафиксированными транзакциями, другим транзакциям.
(1) REPEATABLE READ
(2) SERIALIZABLE
(3) READ COMMITTED
(4) READ UNCOMMITTED
Слово ALL во фразе SELECT означает
(1) все столбцы таблицы, указанной во фразе FROM
(2) все строки таблицы, указанной во фразе FROM
(3) не делить выводимые данные на порции по размеру страницы
(4) не убирать столбцы-дубликаты из полученной выборки
(5) не убирать строки-дубликаты из полученной выборки
Реляционная операция проекции реализуется в команде SELECT
(1) заданием условия WHERE
(2) перечнем имен во фразе FROM
(3) перечнем имен во фразе SELECT
(4) фразой INNER JOIN
(5) фразой ORDER
Укажите варианты, содержащие ошибки.
(1) FROM t1 AS name1, t1 AS name2
(2) FROM t1, t1
(3) SELECT f.t FROM t
(4) SELECT f1 AS name1, f1 AS name2
(5) SELECT f1, f1
Отношение Worker имеет схему:files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float), Commission_pct (float), Branch_id (int), Hire_date (timestamp)

Запрос SQL предназначен для получения имен сотрудников 10-го и 20-го отделов и имеет вид:

SELECT Worker_name FROM Worker WHERE ___________________

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают выполнение задания.

(1) Branch_id BETWEEN 10 AND 20
(2) Branch_id IN (20, 10)
(3) Branch_id = 10 AND Branch_id = 20
(4) Branch_id = 10 OR 20
(5) Branch_id = 20 OR Branch_id = 10
В столбце Worker_name содержатся значения: Tom_Adams, Fred_Adams, Alex, Adams_Black

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

(1) WHERE Worker_name LIKE 'Adams'
(2) WHERE Worker_name LIKE '%_Adams'
(3) WHERE Worker_name LIKE '%$_Adams' ESCAPE '_'
(4) WHERE Worker_name LIKE '%#_Adams' ESCAPE '#'
(5) WHERE Worker_name LIKE '%*_Adams%' ESCAPE '*'
Требуется получить список сотрудников в таком порядке, чтобы сначала шли молодые сотрудники, а в конце списка - пожилые. Выберите соответствующие заданию варианты сортировки при условии, что дата рождения хранится в поле Hiredate (timestamp).
(1) ORDER BY Hiredate
(2) ORDER BY Hiredate ASC
(3) ORDER BY Hiredate ASK
(4) ORDER BY Hiredate DESC
(5) ORDER BY Hiredate DESK
Укажите фрагменты, не содержащие ошибок.
(1) GROUP BY Branch_id HAVUNG COUNT(Worker_id) < 4
(2) GROUP BY Branch_id HAVING Manager_id = 3
(3) GROUP BY Branch_id ORDER BY Salary
(4) SELECT MIN(Commission_pct) FROM Worker GROUP BY Branch_id
(5) SELECT Worker_name FROM Worker GROUP BY Branch_id
Среди итоговых функций имеются функции
(1) AVR
(2) COUNT
(3) MAXIMUS
(4) MINIMUM
(5) SUM
Отношение Worker имеет схему:files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float), Commission_pct (float), Branch_id (int), Hire_date (timestamp)

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

(1) SELECT Manager_id FROM (SELECT * FROM (SELECT Manager_id FROM Worker GROUP BY Manager_id, Branch_id) t GROUP BY Manager_id HAVING COUNT(*) > 1) tt
(2) SELECT Manager_id FROM Worker WHERE COUNT(Branch_id) > 1
(3) SELECT Manager_id FROM Worker GROUP BY Manager_id HAVING COUNT(Branch_id) > 1
(4) SELECT Manager_id FROM Worker GROUP BY Manager_id HAVING COUNT(DISTINCT Branch_id) > 1
(5) SELECT Manager_id FROM Worker GROUP BY Branch_id HAVING COUNT(Manager_id) = 1
Подзапрос
(1) всегда выполняется перед выполнением внешнего запроса
(2) может ссылаться на таблицу, не перечисленную в своей секции FROM
(3) всегда может быть выполнен самостоятельно, вне всякой связи с внешним запросом
(4) не может возвращать во внешний запрос более одного столбца
(5) может возвращать во внешний запрос одну строку данных
Отношение Worker имеет схему:files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float, NOT NULL), Commission_pct (float), Branch_id (int), Hire_date (timestamp) Отношение Branch имеет схему:files Branch: Branch_id (int PK), Branch_title (varchar (30)), Location_id (varchar (20))

Требуется получить список сотрудников, работающих в тех же отделах, что и сотрудники с именем Alex. Выберите варианты запросов, соответствующие заданию.

(1) SELECT Worker_name FROM Worker WHERE Branch_id IN (SELECT Branch_id FROM Worker WHERE Worker_name = 'Alex')
(2) SELECT Worker_name FROM Worker WHERE Branch_id = (SELECT Branch_id FROM Worker WHERE Worker_name = 'Alex')
(3) SELECT Worker_name FROM Worker WHERE EXISTS (SELECT * FROM Worker W WHERE W.Worker_name = 'Alex' AND Worker.Branch_id = W.Branch_id)
(4) SELECT Worker_name FROM Worker WHERE Branch_id = ANY (SELECT Branch_id FROM Worker WHERE Worker_name = 'Alex')
(5) SELECT Worker_name FROM Worker WHERE Branch_id = ALL (SELECT Branch_id FROM Worker WHERE Worker_name = 'Alex')

Отношение t1 состоит из следующих кортежей:

f1f2
11
32
22

Отношение t2 состоит из следующих кортежей:

f1f2
110
220
330

Результат выполнения запроса

SELECT * FROM t1, t2

будет содержать

(1) 0 кортежей
(2) 2 кортежа
(3) 3 кортежа
(4) 6 кортежей
(5) 8 кортежей
(6) 9 кортежей
Отношение Worker имеет схему:files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float, NOT NULL), Commission_pct (float), Branch_id (int), Hire_date (timestamp)

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

SELECT Worker_name, Branch_title FROM _________________________

Выберите варианты фрагмента запроса (вместо знака подчеркивания), соответствующие заданию.

(1) Worker INNER NATURAL JOIN Branch
(2) Worker NATURAL JOIN Branch
(3) Worker NATURAL JOIN Branch ON Worker.Branch_id = Branch.Branch_id
(4) Worker NATURAL JOIN Branch USING (Branch_id)
(5) Worker NATURAL JOIN Branch WHERE Worker.Branch_id = Branch.Branch_id
В таблице t1, содержащей 4 строки, в столбце f содержатся значения 1, 2, 2, 3. В таблице t2, содержащей 6 строк, в столбце f содержатся значения 1, 2, 2, 3, 3, 4.

Сколько строк данных будет получено в результате выполнения запроса

SELECT t2.f FROM t1 RIGHT OUTER JOIN t2 ON t1.f = t2.f
(1) 4
(2) 6
(3) 7
(4) 8
(5) 10
Пусть в таблице t1, содержащей 3 строки, имеется столбец f со значениями 1, 2, 3. Пусть в таблице t2, содержащей 4 строки, имеется столбец f со значениями 1, 3, 4, 5. Сколько строк данных будет получено в результате выполнения следующего запроса: SELECT f FROM t1 UNION SELECT f FROM t2
(1) 0
(2) 1
(3) 3
(4) 4
(5) 5
(6) 7
В таблице t1, содержащей 4 строки, имеется столбец f со значениями 1, 2, 2, 3. В таблице t2, содержащей 5 строк, есть столбец f со значениями 2, 2, 3, 3, 4. Сколько строк данных вернет следующий запрос: SELECT f FROM t1 INTERSECT SELECT f FROM t2
(1) 0
(2) 2
(3) 3
(4) 4
(5) 7
(6) 9
Какие из перечисленных типов данных используются для представления времени и даты (одновременно):
(1) TIMESTAMP
(2) DATE
(3) TIME
(4) TIME WITH TIME ZONE
(5) TIMESTAMP WITH TIME ZONE

Фраза VALUES:

(1) является обязательной в запросе INSERT
(2) может включать функции и выражения в списке вставляемых значений
(3) не может быть заменена подзапросом SELECT
(4) требует, чтобы число значений в скобках соответствовало числу столбцов, заданных во фразе INSERT
Отношение Worker имеет схему:files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float), Commission_pct (float), Branch_id (int), Hire_date (date)

Запрос SQL предназначен для вставки в таблицу Worker новой строки и имеет вид:

INSERT _______ Worker____________ VALUES (10, 15, ‘Scott’, 1.1)

Выберите из предложенных вариантов те, которые при подстановке вместо знаков подчеркивания обеспечивают безошибочное выполнение запроса

(1) первый фрагмент: IN TABLE второй фрагмент: Worker_id, Branch_id, Worker_name, Commission_pct
(2) первый фрагмент: INTO второй фрагмент: Worker_id, Commission_pct, Worker_name, Salary
(3) первый фрагмент: INTO второй фрагмент: Worker_id, Worker_name, Branch_id, Commission_pct
(4) первый фрагмент: IN TABLE второй фрагмент: Worker_id, Branch_id, Worker_name, Commission_pct
(5) первый фрагмент: IN второй фрагмент: ничего не нужно
Отношение Branch имеет схему:files Branch: Branch_id (int PK), Branch_title (varchar (30)), Location_id (int, default=20)

Запрос SQL предназначен для вставки в таблицу Branch новой строки и имеет вид:

INSERT INTO Branch VALUES (10, NULL)

Среди перечисленных вариантов укажите, каким будет результат выполнения приведенной выше операции при условии, что отдела с номером 10 ранее не существовало:

(1) сервер БД сгенерирует ошибку, и операция будет отменена
(2) в таблицу будет вставлена строка
Branch_idBranch_titleLocation_id
10NULLNULL
(3) в таблицу будет вставлена строка
Branch_idBranch_titleLocation_id
10NULL0
(4) в таблицу будет вставлена строка
Branch_idBranch_titleLocation_id
10NULL20
Отношение Worker имеет схему: files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)

и состоит из следующих кортежей:

Worker_idWorker_nameManager_idSalaryCommission_pctBranch_idHire_date
11Tom1510000.81020.05.98
12Alex17900NULL2021.06.98

Запрос SQL имеет вид:

INSERT INTO Worker (Worker_id, Hire_date, Worker_name) VALUES (13, ‘Tomas’, ’01/04/2003’)

При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Выберите действие, выполнение которого позволит устранить ошибку:

(1) явно преобразовать строковое значение даты во фразе VALUES в тип timestamp с помощью функции CAST
(2) поменять местами во фразе INSERT названия столбцов Hire_date и Worker_name
(3) вместо строки ’01/04/2003’, использовать строку ’01.04.2003 00:00:00.000’
(4) вместо значения ‘Tomas’ использовать значение NULL
Отношение Worker имеет схему:files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float, NOT NULL), Commission_pct (float), Branch_id (int), Hire_date (timestamp)

Отношение Worker1 является пустым и имеет схему:

Worker1: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float, NOT NULL), Commission_pct (float), Branch_id (int), Hire_date (timestamp)

Запрос SQL предназначен для вставки новой строки в таблицу Worker1 о сотруднике с именем Robin и окладом, равным среднему значению оклада в 20 отделе, рассчитываемому по данным таблицы Worker.

INSERT INTO Worker1 (Worker_id, Salary, Worker_name) ___________________

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

(1) VALUES (12, CASE (Branch_id) WHEN 20 THEN AVG(Salary), ‘Robin’)
(2) VALUES (12, SELECT AVG(Salary) FROM Worker WHERE Branch_id=20, ‘Robin’)
(3) SELECT 12, AVG(Salary), ‘Robin’ FROM Worker WHERE Branch_id=20
(4) 12, SELECT AVG(Salary) FROM Worker WHERE Branch_id=20, ‘Robin’
Какие из перечисленных выражений могут следовать непосредственно за ключевым словом UPDATE:
(1) ключевое слово CASCADE
(2) ключевое слово OBJECT
(3) список столбцов, значение в которых следует изменить, и затем фраза IN TABLE
(4) ключевое слово TABLE
(5) название таблицы
Отношение Worker имеет схему:files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)

Запрос предназначен для внесения изменений в записи о сотрудниках отдела №10. Для указанных записей номер отдела должен быть изменен на 30, а значение в поле Manager_id стать равным 13.

UPDATE Worker __________________ WHERE Branch_id = 10

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

(1) SET VALUES (Branch_id = 30, Manager_id = 13)
(2) SET (Branch_id = 30, Manager_id = 13)
(3) COLUMN Branch_id = 30, Manager_id = 13
(4) SET Branch_id = 30, Manager_id = 13
(5) SET Branch_id = 30 AND Manager_id = 13
Отношение Worker имеет схемуfiles Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)

Запрос предназначен для увеличения премий сотрудникам, у которых оклад меньше 800, на 10% и уменьшения премий сотрудникам, у которых оклад выше 2000, на 20%.

UPDATE Worker SET________________ ____________________

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

(1) первый фрагмент: Commission_pct = Commission_pct*1.1, Commission_pct = Commission_pct*0.8 второй фрагмент: WHERE Salary < 800, Salary > 2000
(2) первый фрагмент: Commission_pct = CASE WHEN Salary < 800 THEN Commission_pct*1.1 WHEN Salary > 2000 THEN Commission_pct*0.8 ELSE Commission_pct END второй фрагмент: ничего не нужно
(3) первый фрагмент: Commission_pct = Commission_pct*1.1, Commission_pct = Commission_pct*0.8 второй фрагмент: WHERE Salary < 800 AND Salary > 2000
(4) первый фрагмент: Commission_pct = Commission_pct*1.1 WHERE Salary < 800 AND Commission_pct = Commission_pct*0.8 WHERE Salary > 2000 второй фрагмент: ничего не нужно
Отношение Worker состоит из следующих кортежей:files
Worker_idWorker_nameManager_idSalaryCommission_pctBranch_idHire_date
11Tom1510000.81020.05.98
12Alex179000.32021.06.98

Отношение Branch состоит из следующих кортежей:

Branch_idBranch_titleLocation_idRating
10Accounting11High
20Finance12Low

Запрос SQL имеет вид:

UPDATE Branch SET Rating = ‘HIGH’ WHERE Branch_id = (SELECT Branch_id FROM Worker GROUP BY Branch_id HAVING AVG (Salary + Salary*Commission_pct)>1100)

Среди предложенных вариантов выберите, каким, в итоге, останется отношение Groups.

(1) отношение Groups останется без изменений, т.к. запрос содержит ошибку, и выполнен не будет.
(2)
Branch_idBranch_titleLocation_idRating
10Accounting11High
20Finance12High
(3)
Branch_idBranch_titleLocation_idRating
10Accounting11HIGH
20Finance12HIGH
(4)
Branch_idBranch_titleLocation_idRating
10Accounting11HIGH
20Finance12Low
Отношение Worker имеет схему:files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)

Запрос предназначен для удаления записей о сотрудниках отдела №20, у которых в поле Manager_id имеется значение 13.

DELETE FROM _________Worker ______________________________

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

(1) первый фрагмент: ничего, второй фрагмент: WHERE Branch_id = 20 OR Manager_id = 13
(2) первый фрагмент: ничего, второй фрагмент: WHERE Branch_id = 20 AND Manager_id = 13
(3) первый фрагмент: TABLE, второй фрагмент: WHEN Branch_id = 20 AND Manager_id = 13
(4) первый фрагмент: ничего, второй фрагмент: IF Branch_id = 20 OR Manager_id = 13
(5) первый фрагмент: TABLE, второй фрагмент: WHERE Branch_id = 20 AND Manager_id = 13

Ключевое слово CONSTRAINT в предложении CREATE TABLE:

(1) является обязательным при определении ограничений
(2) может использоваться только для определения ограничений ссылочной целостности
(3) может использоваться для определения ограничений на уровне отдельного столбца и всей таблицы
(4) может использоваться при определении столбца вместе с фразой PRIMARY KEY
Запрос SQL имеет вид: CREATE TABLE t1 ( nom INT PRIMARY KEY, name VARCHAR(30) NOT NULL DEFAULT ('noname'), salary DECIMAL(2, 3) DEFAULT 3 )

При выполнении запроса сервера БД генерирует ошибку. Выберите действие, выполнение которого позволит устранить ошибку:

(1) заменить значение 3 во фразе DEFAULT на значение, меньшее 1
(2) удалить фразу DEFAULT в определении столбца name
(3) изменить второй параметр в определении типа DECIMAL столбца salary на 1
(4) удалить скобки во фразе DEFAULT

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

(1) NULL
(2) FOREIGN KEY REFERENCES
(3) CHECK
(4) RANGE
(5) PRIMARY KEY
Какое из перечисленных ограничений требует задания логического условия:
(1) CHECK
(2) FOREIGN KEY
(3) NOT NULL
(4) PRIMARY KEY
(5) UNIQUE
Для создания таблицы Worker использовалась следующая команда:files CREATE TABLE Worker (Worker_id INT PRIMARY KEY, Manager_id INT, Hire_date TIMESTAMP, Worker_name VARCHAR(20), Salary FLOAT NOT NULL, Commission_pct FLOAT NOT NULL, Branch_id INT REFENCES Branch (Branch_id) ON DELETE SET DEFAULT DEFAULT 20 )

Отношение Worker состоит из кортежей:

Worker_idWorker_nameManager_idSalaryCommission_pctBranch_idHire_date
11Tom1510000.81020.05.98

Отношение Branch состоит из кортежей:

Branch_idBranch_titleLocation_id
10Accounting11

Запрос SQL имеет вид:

UPDATE Branch SET Branch_id = 40 WHERE Branch_id = 10

Укажите, каким в результате выполнения данного запроса окажется отношение Worker:

(1) отношение Worker останется без изменений, так как будет сгенерирована ошибка
(2)
Worker_idWorker_nameManager_idSalaryCommission_pctBranch_idHire_date
11Tom1510000.82020.05.98
(3)
Worker_idWorker_nameManager_idSalaryCommission_pctBranch_idHire_date
11Tom1510000.8NULL20.05.98
(4)
Worker_idWorker_nameManager_idSalaryCommission_pctBranch_idHire_date
11Tom1510000.84020.05.98
Запрос предназначен для создания таблицы Worker, для которой установлено ограничение, гарантирующее, что столбец Manager_id будет принимать только значения 1 и 2.files CREATE TABLE Worker (Worker_id INT PRIMARY KEY, Hire_date TIMESTAMP, Worker_name VARCHAR(20), Salary FLOAT NOT NULL, Commission_pct FLOAT NOT NULL, Branch_id int, Manager_id int ______ )

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:

(1) CHECK (Manager_id = 1 OR 2)
(2) CHECK (Manager_id = 1 OR Manager_id = 2)
(3) , CONSTRAINT CHECK (Manager_id IN (1,2))
(4) , CONSTRAINT chk_man CHECK (Manager_id IN (1,2))
(5) , CHECK (Manager_id IN (1,2))
Для создания таблицы Worker использовалась следующая команда:files CREATE TABLE Worker (Worker_id INT PRIMARY KEY, Manager_id INT REFERENCES Manager (Manager_nom), Hire_date TIMESTAMP, Worker_name VARCHAR (20), Salary FLOAT NOT NULL, Commission_pct FLOAT NOT NULL, Branch_id INT REFERENCES Branch (Branch_id), CONSTRAINT con123 NOT NULL (Manager_id) )

В результате выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину ошибки при условии, что таблица Manager существует, и в ней присутствует столбец Manager_nom типа int:

(1) в определении внешнего ключа пропущено словосочетание FOREIGN KEY
(2) в определении таблицы присутствует два ограничения FOREIGN KEY
(3) в определении ограничения PRIMARY KEY не задано имя ограничения
(4) ограничение NOT NULL может задавать только на уровне отдельного столбца, но не всей таблицы
Какое ключевое слово (словосочетание) может использоваться в предложении ALTER TABLE для указания на столбцы, подлежащие удалению
(1) DROP
(2) DROP COLUMN
(3) DELETE COLUMN
(4) DELETE
Отношение Worker имеет схему:files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)

Отношение Branch имеет схему:

Branch: Branch_id (int PK), Branch_title (varchar (30)), Location_id (int)

Для создания представления, в которое должны попасть только имена сотрудников, работающих в отделе Research, используется запрос:

CREATE _______SELECT Worker_name FROM Worker w, Branch b WHERE w.Branch_id = b.Branch_id AND Branch_title LIKE ‘Research’

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают безошибочное выполнение операции и получение требуемого результата:

(1) VIEW AS
(2) view1 AS
(3) VIEW view1
(4) VIEW view1 AS SUBQUERY
(5) VIEW view1 AS

Фраза WITH CHECK OPTION в предложении CREATE VIEW:

(1) создает новое ограничение
(2) позволяет создать представление только в том случае, если все выбираемые по запросу строки удовлетворяют логическому условию, которое следует после приведенной фразы
(3) является обязательной
(4) гарантирует, что для создаваемого представления будут допустимы лишь те DML инструкции, результатом выполнения которых будут строки, которые смогут отбираться запросом, лежащим в основе представления
(5) следует перед запросом, на основе которого создается представление
Запрос предназначен для того, чтобы запретить обновление значений в столбце (Salary) таблицы Worker зарегистрированному в базе данных пользователю User1. files __________ UPDATE (Salary) ON Worker FROM User1

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

(1) REVOKE PRIVILEGES
(2) REVOKE AS ANY USER
(3) REVOKE
(4) DENY AS ANY USER
(5) DELETE PRIVILEGES
Какие из перечисленных объектных привилегий не могут назначаться на уровне отдельных столбцов
(1) SELECT
(2) INSERT
(3) DELETE
(4) REFERENCES
(5) UPDATE
Выберите команды (запросы), выполнение которых всегда приводит к завершению транзакции:
(1) SAVE TRAN t
(2) INSERT INTO имя_таблицы VALUES (значения)
(3) ROLLBACK
(4) COMMIT
(5) CREATE TABLE имя таблицы (определение столбцов и ограничений)
После слова FROM может указываться
(1) команда SELECT, заключенная в круглые скобки
(2) название базы данных
(3) названия нескольких столбцов, разделенные запятыми
(4) названия нескольких таблиц, разделенные пробелом
(5) название представления
Реляционная операция пересечения реализуется в команде SELECT с помощью
(1) конструкции SELECT ... WHERE ... IN (SELECT ...)
(2) конструкции SELECT ... WHERE ... NOT IN (SELECT ...)
(3) перечня имен во фразе FROM
(4) фразы EXCEPT
(5) фразы INTERSECT
В каждой из таблиц t1 и t2 есть столбец с именем f. Выберите варианты, не содержащие ошибок.
(1) SELECT f FROM t1, t2
(2) SELECT f FROM t2
(3) SELECT f.t2 FROM t1, t2
(4) SELECT t1.f FROM t1 t2
(5) SELECT t2.f FROM t2, t1
Во фразе BETWEEN d1 AND d2
(1) граничные значения d1 и d2 включаются в диапазон
(2) граничные значения d1 и d2 не включаются в диапазон
(3) значение d1 включается в диапазон, а значение d2 не включается
(4) значения d1 и d2 могут быть символьного типа
(5) значения d1 и d2 могут быть типа TIMESTAMP
Требуется отобрать сотрудников, у которых столбец Commission_pct имеет некоторое значение. Выберите условие, соответствующее заданию.
(1) WHERE Commission_pct <> NULL
(2) WHERE Commission_pct <> 0
(3) WHERE Commission_pct IS NOT NULL
(4) WHERE Commission_pct NOT IS NULL
(5) WHERE NOT (Commission_pct IS NULL)
Запрос SQL имеет вид: SELECT CASE Branch_id WHEN 10 THEN 'Accounting' WHEN 20 THEN 'Research' END FROM Worker

Что будет получено в результате выполнения этого запроса, если значение Branch_id равно 30?

(1) Accounting
(2) 30
(3) NULL
(4) Research
(5) сервер БД сгенерирует ошибку
Фраза HAVING
(1) задает имя столбца
(2) задает итоговую функцию
(3) задает логическое условие
(4) отбирает строки результатной таблицы, сформированные после группировки
(5) эквивалентна по действию фразе WHERE
Отношение Worker имеет схему:files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float), Commission_pct (float), Branch_id (int), Hire_date (timestamp)

Требуется получить наибольшее значение зарплаты (Salary) среди всех сотрудников. Полученное значение следует вывести под именем max. Выберите из предложенных вариантов те, которые обеспечивают выполнение задания.

(1) SELECT max AS max(Salary) FROM Worker
(2) SELECT max(Salary) FROM Worker
(3) SELECT max(Salary) AS max FROM Worker
(4) SELECT max(Salary) max FROM Worker
(5) SELECT max(Salary) AS 'max' FROM Worker
Отношение Worker имеет схему:files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float), Commission_pct (float), Branch_id (int), Hire_date (timestamp)

Запрос SQL имеет вид:

SELECT Manager_id, COUNT(*) FROM Worker GROUP BY Manager_id HAVING MAX(Salary) <= 1000

Данный запрос выводит

(1) количество записей в таблице Worker, где Worker_id = Manager_id и Salary <= 1000
(2) количество менеджеров, зарплата подчиненных сотрудников которых не превышает 1000
(3) для каждого менеджера - количество подчиненных сотрудников с зарплатой не более 1000
(4) количество подчиненных сотрудников для менеджеров, под чьим руководством никто не получает зарплату более 1000
(5) количество сотрудников у тех менеджеров, чья зарплата не превышает 1000
Отношение Worker имеет схему:files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float, NOT NULL), Commission_pct (float), Branch_id (int), Hire_date (timestamp)

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

SELECT DISTINCT Branch_id FROM Worker WHERE _______________
(1) Salary <= ALL (SELECT Salary FROM Worker)
(2) Salary <= ANY (SELECT Salary FROM Worker)
(3) Salary <= EXISTS (SELECT MIN(Salary) FROM Worker)
(4) Salary <= (SELECT MIN(Salary) FROM Worker)
(5) Salary <= (SELECT Salary FROM Worker)
Отношение Worker имеет схему:files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float, NOT NULL), Commission_pct (float), Branch_id (int), Hire_date (timestamp)

Требуется получить количество сотрудников, являющихся менеджерами. Выберите варианты запросов, соответствующие заданию.

(1) SELECT COUNT(Manager_id) FROM Worker
(2) SELECT COUNT(DISTINCT Manager_id) FROM Worker
(3) SELECT COUNT(*) FROM SELECT DISTINCT Manager_id FROM Worker
(4) SELECT COUNT(*) FROM (SELECT Manager_id FROM Worker GROUP BY Manager_id)
(5) SELECT COUNT(Manager_id) FROM SELECT Manager_id FROM Worker GROUP BY Manager_id
Отношение Worker имеет схему:files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float, NOT NULL), Commission_pct (float), Branch_id (int), Hire_date (timestamp) Отношение Branch имеет схему:files Branch: Branch_id (int PK), Branch_title (varchar (30)), Location_id (varchar (20))

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

SELECT Worker_name, Branch_title FROM __________________________
(1) Worker, Branch
(2) Worker INNER JOIN Branch ON Worker.Branch_id = Branch.Branch_id
(3) Worker JOIN Branch USING (Branch_id)
(4) Worker CROSS JOIN Branch
(5) Worker RIGHT OUTER JOIN Branch ON Worker.Branch_id = Branch.Branch_id
Оператор JOIN ... USING отличается от оператора NATURAL JOIN тем, что
(1) оператор JOIN ... USING соединяет таблицы по указанным одноименным столбцам
(2) в операторе JOIN ... USING можно указать любые столбцы, по которым следует соединить таблицы
(3) оператор NATURAL JOIN соединяет таблицы по первичным ключам
(4) в операторе NATURAL JOIN не указываются столбцы, по которым следует соединять таблицы
(5) эти операторы эквивалентны друг другу, отличий нет
Отношение Worker имеет схему:files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float, NOT NULL), Commission_pct (float), Branch_id (int, NOT NULL), Hire_date (timestamp) Отношение Branch имеет схему:files Branch: Branch_id (int PK), Branch_title (varchar (30)), Location_id (varchar (20))

Требуется получить названия отделов, в которых нет сотрудников. Выберите варианты запроса , соответствующие заданию.

(1) SELECT Branch_title FROM Worker FULL OUTER JOIN Branch ON Worker.Branch_id = Branch.Branch_id WHERE Worker_id IS NULL
(2) SELECT Branch_title FROM Branch LEFT OUTER JOIN Worker ON Branch.Branch_id = Worker.Branch_id WHERE Worker.Branch_id IS NULL
(3) SELECT Branch_title FROM Worker INNER JOIN Branch ON Worker.Branch_id = Branch.Branch_id GROUP BY Branch.Branch_id, Branch_title HAVING COUNT(Worker_id) = 0
(4) SELECT Branch_title FROM Worker INNER JOIN Branch ON Worker.Branch_id = Branch.Branch_id WHERE Worker_id IS NULL
(5) SELECT Branch_title FROM Worker RIGHT OUTER JOIN Branch ON Worker.Branch_id = Branch.Branch_id WHERE Worker_id IS NULL
Запрос SQL имеет вид: Запрос1 UNION Запрос2

Чтобы в таблице после выполнения этого запроса остались только отличающиеся строки, необходимо:

(1) добавить слово DISTINCT в Запрос1
(2) добавить слово DISTINCT в Запрос2
(3) добавить слово DISTINCT и в Запрос1, и в Запрос2
(4) ничего делать не нужно, по умолчанию останутся только отличающиеся строки
(5) оставить только отличающиеся записи невозможно
Отношение Worker имеет схему:files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float, NOT NULL), Commission_pct (float), Branch_id (int), Hire_date (timestamp)

Требуется получить идентификаторы сотрудников, не являющихся менеджерами. Выберите варианты запросов, соответствующие заданию.

(1) SELECT Worker_id FROM Worker EXCEPT SELECT Manager_id FROM Worker
(2) SELECT Worker_id FROM Worker INTERSECT SELECT Manager_id FROM Worker
(3) SELECT Worker_id FROM Worker UNION SELECT Manager_id FROM Worker
(4) SELECT Worker_id FROM Worker NOT IN SELECT Manager_id FROM Worker
(5) SELECT Worker_id FROM Worker <> SELECT Manager_id FROM Worker
(6) SELECT Worker_id FROM Worker WHERE Worker_id NOT IN (SELECT Manager_id FROM Worker)

Отличие типов данных CHAR и VARCHAR заключается:

(1) только в названии, оба обозначают один и тот же тип данных
(2) в том, что в отличие от CHAR переменные типа VARCHAR позволяют хранить данные переменной длины
(3) в том, что в отличие от VARCHAR переменные типа CHAR позволяют хранить данные переменной длины
(4) в том, что в отличие от CHAR для данных типа VARCHAR может применяться явное преобразование с помощью функции CAST

Список значений во фразе VALUES может включать:

(1) ключевое слово DEFAULT
(2) подзапрос
(3) значение NULL
(4) выражение или функцию
(5) ключевое слово TOP
Отношение Worker имеет схему:files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (date)

Запрос SQL предназначен для вставки в таблицу Worker новой строки и имеет вид:

INSERT INTO Worker (Worker_id, Worker_name, Hire_date) ______________________________

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают безошибочное выполнение запроса

(1) ROW (10, ‘Tom’, ’12-JAN-03’)
(2) VALUES (20, ‘Collin’, CAST (’12.01.08’ AS DATE))
(3) SELECT (‘10’, ‘Mark’, ’12.01.08’)
(4) SELECT ‘10’, ‘Mark’, ’12.01.08’
(5) VALUES (10, DEFAULT, DEFAULT, CAST (’12.01.08’ AS DATE))
Отношение Branch является пустым и имеет схему:files Branch: Branch_id (int PK), Branch_title (varchar (30)), Location_id (int, default=30)

Запрос SQL предназначен для вставки в таблицу Branch новой строки и имеет вид:

INSERT INTO Branch (Branch_id, Branch_title) SELECT 20.2, 17

Среди перечисленных вариантов укажите, каким будет результат выполнения приведенной выше операции:

(1) в таблицу будет вставлена строка
Branch_idBranch_titleLocation_id
2117NULL
(2) в таблицу будет вставлена строка
Branch_idBranch_titleLocation_id
2017NULL
(3) в таблицу будет вставлена строка
Branch_idBranch_titleLocation_id
201730
(4) сервер БД сгенерирует ошибку, и операция будет отменена
Отношение Worker имеет схему: files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)

и состоит из следующих кортежей:

Worker_idWorker_nameManager_idSalaryCommission_pctBranch_idHire_date
11Tom1510000.81020.05.98
12Alex17900NULL2021.06.98

Запрос SQL имеет вид:

INSERT INTO Worker (Worker_id, Commission_pct, Worker_name) VALUES (13, ____ ’Allen’)

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают безошибочное выполнение запроса

(1) DEFAULT,
(2) ничего не вставлять
(3) NULL
(4) 1.3,
(5) CAST (‘1.3’ AS float),
Отношение Branch и имеет схему:files Branch: Branch_id (int PK), Branch_title (varchar (30)), Location_id (int, default=30)

Отношение Branch1 является пустым и имеет схему:

Branch1: Branch_id (int PK), Branch_title (varchar (30)), Location_id (int, default=30)

Запрос SQL имеет вид:

INSERT INTO Branch1 (Branch_id, Branch_title) SELECT Branch_id, Branch_title, NULL FROM Branch WHERE Branch_id=20

В результате выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину возникновения ошибки:

(1) подзапрос возвращает избыточное число значений
(2) перед именами столбцов надо указывать имя таблицы, поскольку одноименные столбцы присутствуют в обеих таблицах
(3) значение NULL недопустимо во фразе SELECT
(4) подзапрос не заключен в скобки

Оператор UPDATE:

(1) Является оператором DCL
(2) Является оператором DML
(3) Всегда приводит к фиксации транзакции
(4) может включать подзапросы во фразе WHERE
Отношение Worker имеет схему:files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)

Запрос предназначен для снижения окладов (Salary) и премий (Commission_pct) на 10% у сотрудников отдела № 10.

UPDATE Worker ____ Salary = Salary*0.9_________ Commission_pct = Commission*0.9 ____ Branch_id = 10

Какие ключевые слова следует вставить вместо знаков подчеркивания для получения корректного запроса, решающего поставленную задачу?

(1) Первый фрагмент: SET; второй фрагмент: cимвол ","; третий фрагмент: WHERE
(2) Первый фрагмент: COLUMNS; второй фрагмент: AND; третий фрагмент: IF
(3) Первый фрагмент: VALUES; второй фрагмент: AND; третий фрагмент: WHERE
(4) Первый фрагмент: SET; второй фрагмент: cимвол ","; третий фрагмент: WHEN
(5) Первый фрагмент: SET COLUMNS; второй фрагмент: cимвол ","; третий фрагмент: WHEN
Отношение Worker имеет схему:files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)

Запрос предназначен для увеличения сотруднику с номером 15 оклада на 20% и перевода сотрудника с номером 17 в отдел №20.

UPDATE Worker _________________ _________________

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

(1) первый фрагмент: CASE Worker_id WHEN 15 THEN SET Salary = Salary*1.2, WHEN 17 THEN SET Branch_id = 20 END второй фрагмент: ничего не нужно
(2) первый фрагмент: SET Salary = Salary*1.2 AND Branch_id = 20 второй фрагмент: WHERE Worker_id = 15 AND 17
(3) первый фрагмент: SET Salary = Salary*1.2, Branch_id = 20 второй фрагмент: WHERE Worker_id = 15, Worker_id=17
(4) первый фрагмент: SET Salary = CASE Worker_id WHEN 15 THEN Salary*1.2 END, Branch_id = CASE Worker_id WHEN 17 THEN 20 END второй фрагмент: ничего не нужно
(5) первый фрагмент: SET Salary = CASE Worker_id WHEN 15 THEN Salary*1.2 ELSE Salary END, Branch_id = CASE Worker_id WHEN 17 THEN 20 ELSE Branch_id END второй фрагмент: ничего не нужно
Отношение Worker состоит из кортежей: files
Worker_idWorker_nameManager_idSalaryCommission_pctBranch_idHire_date
11James1511000.81002.01.98
12Ronald191100NULL2015.07.98

Отношение Worker1 состоит из кортежей:

Worker_idWorker_nameManager_idSalaryCommission_pctBranch_idHire_date
13Tom169000.71020.05.98
14Alex188000.52021.06.98

Запрос SQL имеет вид:

UPDATE Worker SET Salary = (SELECT MAX (Salary)*1.1 FROM Worker1) WHERE Branch_id IN (SELECT Branch_id FROM Worker1 GROUP BY Branch_id HAVING MIN (Salary*Commission_pct) > 600)

Среди предложенных вариантов выберите, каким, в итоге, останется отношение Worker.

(1) отношение Worker останется без изменений, т.к. запрос содержит ошибку, и выполнен не будет
(2)
Worker_idWorker_nameManager_idSalaryCommission_pctBranch_idHire_date
11James1512100.81002.01.98
12Ronald191100NULL2015.07.98
(3)
Worker_idWorker_nameManager_idSalaryCommission_pctBranch_idHire_date
11James159900.81002.01.98
12Ronald19990NULL2015.07.98
(4)
Worker_idWorker_nameManager_idSalaryCommission_pctBranch_idHire_date
11James159900.81002.01.98
12Ronald19990NULL2015.07.98
(5)
Worker_idWorker_nameManager_idSalaryCommission_pctBranch_idHire_date
11James159900.81002.01.98
12Ronald191100NULL2015.07.98
Отношение Worker имеет схему:files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)

Отношение Branch имеет схему

Branch: Branch_id (int PK), Branch_title (varchar (30)), Location_id (int, default=30)

Запрос предназначен для удаления записей о сотрудниках, работающих в отделе Accounting (Branch_title).

DELETE _________Worker ________________________

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

(1) Первый фрагмент: FROM TABLE второй фрагмент: WHERE Branch_id = (SELECT Branch_id FROM Branch WHERE Branch_title = ‘Accounting’)
(2) Первый фрагмент: ROWS FROM второй фрагмент: WHERE Branch_id = (SELECT Branch_id FROM Branch WHERE Branch_title LIKE ‘Accounting’)
(3) Первый фрагмент: FROM второй фрагмент: WHERE Branch_id IN (SELECT Branch_id FROM Branch WHERE Branch_title = ‘Accounting’)
(4) Первый фрагмент: FROM второй фрагмент: WHEN Branch_id = (SELECT Branch_id FROM Branch WHERE Branch_title = ‘Accounting’)

Оператор CREATE TABLE:

(1) является оператором DML (язык манипулирования данными)
(2) является оператором DCL (язык управления данными)
(3) предназначен для создания таблиц
(4) может включать логические выражения
(5) может включать определения столбцов и ограничений целостности данных
Какие из перечисленных выражений могут использоваться для определения полей, которые не могут принимать значение NULL, в предложении CREATE TABLE:
(1) Person_id INT PRIMARY KEY
(2) Person_id INT IS NOT NULL
(3) Person_id INT NOT NULL
(4) Person_id INT NOT EQUALS NULL
(5) Person_id INT NOT EMPTY

Ограничение FOREIGN KEY

(1) включает в себя ограничение NOT NULL
(2) предполагает, что значения столбца, для которого оно задано, могут выбираться из существующих значений соответствующего первичного ключа
(3) может быть в отношении только единственным
(4) является ограничением ссылочной целостности
(5) может задаваться только на уровне целой таблицы (не отдельных столбцов)
Какие из перечисленных ограничений не требуют уникальности значений в заданном столбце (группе столбцов):
(1) CHECK
(2) NOT NULL
(3) UNIQUE
(4) PRIMARY KEY
(5) FOREIGN KEY
Для создания таблицы Branch использовалась следующая команда:files CREATE TABLE Branch (Branch_id INT PRIMARY KEY, Branch_title VARCHAR(20), Location_id INT REFERENCES Location (Location_id) DEFAULT 20 )

Отношение Branch состоит из кортежей:

Branch_idBranch_titleLocation_id
20Sales10

Отношение Location состоит из следующих кортежей:

Location_idCountry_nameCity_nameStreetBuilding
10Account9.8Zhukov12
20Sales 6.2Lenin13

Запрос SQL имеет вид:

UPDATE Location SET Location_id = 80 WHERE Location_id=10

Укажите, каким в результате выполнения данного запроса окажется отношение Branch:

(1) отношение Branch останется без изменений
(2) отношение Branch окажется пустым
(3)
Branch_idBranch_titleLocation_id
20SalesNULL
(4)
Branch_idBranch_titleLocation_id
20Sales20
Запрос предназначен для создания таблицы Worker, первичным ключом которой является совокупность столбцов:files Worker_id, Manager_id. CREATE TABLE Worker (Worker_id INT _________, Worker_name VARCHAR (20), Salary FLOAT NOT NULL, Commission_pct FLOAT NOT NULL, Manager_id INT ________________________ )

Выберите из предложенных вариантов те, которые при подстановке вместо знаков подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:

(1) первый фрагмент: PRIMARY KEY второй фрагмент: PRIMARY KEY
(2) первый фрагмент: CONSTRAINT pk_worker PRIMARY KEY второй фрагмент: CONSTRAINT pk_worker PRIMARY KEY
(3) первый фрагмент: ничего второй фрагмент: , PRIMARY KEY (Worker_id, Manager_id)
(4) первый фрагмент: ничего второй фрагмент: , CONSTRAINT PRIMARY KEY (Worker_id, Manager_id)
Для создания таблицы Worker использовалась следующая команда:files CREATE TABLE Worker (Worker_id INT PRIMARY KEY, Manager_id INT, Hire_date TIMESTAMP, Worker_name VARCHAR(20), Salary DECIMAL(6, 2) NOT NULL, Commission_pct DECIMAL(3, 2) NOT NULL, Branch_id INT REFERENCES Branch (Branch_id) ON UPDATE SET NULL DEFAULT 20 CHECK (Salary + Salary * Commission_pct >= 1800) )

Отношение Worker состоит из кортежей:

Worker_idWorker_nameManager_idSalaryCommission_pctBranch_idHire_date
11Tom1510000.91020.05.98

Отношение Branch состоит из кортежей

Branch_idBranch_titleLocation_id
10SalesNULL

Запрос SQL имеет вид:

UPDATE Worker SET Commission_pct = 0.8, Branch_id = 20 WHERE Branch_id=10

В результате выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину возникновения ошибки:

(1) выражения для столбцов во фразе SET разделены запятой, что недопустимо
(2) выражение Salary + Salary * Commission_pct для новой строки принимает значение, не превышающее 1800
(3) неверный формат нового значения, присваиваемого столбцу Commission_pct
(4) в таблице Branch отсутствует запись об отделе с номером 20
Для создания таблицы Worker использовалось следующее определение:files CREATE TABLE Worker (Worker_id INT PRIMARY KEY, Manager_id INT, Hire_date TIMESTAMP, Worker_name VARCHAR(20), Salary FLOAT DEFAULT 800, Branch_id INT REFERENCES Branch (Branch_id), )

Запрос предназначен для вставки в таблицу Worker нового столбца Commission_pct c ограничением, устанавливающим минимальное значение для этого столбца, равное 0.1

ALTER TABLE Worker ___________________

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

(1) ADD COLUMN Commission_pct CHECK (Commission_pct >= 0.1)
(2) ADD COLUMN Commission_pct FLOAT CHECK (Commission_pct >= 0.1)
(3) ADD COLUMN Commission_pct FLOAT DEFAULT 0.1
(4) ADD COLUMN Commission_pct FLOAT ADD CONSTRAINT c1 CHECK (Commission_pct >= 0.1)
Отношение Worker имеет схему: files Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK)

Отношение Branch имеет схему:

Branch: Branch_id (int PK), Branch_title (varchar (30)), Location_id (int)

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

CREATE VIEW view1 (Id, Worker_name, Branch) AS__________________________

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают безошибочное выполнение операции:

(1) SELECT Worker_id, Worker_name, Branch_id FROM Worker
(2) (Worker_id, Worker_name, Branch_id FROM Worker)
(3) SELECT * FROM Worker
(4) SELECT Worker_id, Worker_name, b.Branch_id FROM Worker w, Branch b WHERE w.Branch_id = b.Branch_id AND b.Branch_title LIKE ’Res%’

Представления:

(1) представляют собой физические копии строк из существующих таблиц
(2) хранятся в системном каталоге (словаре данных)
(3) обязательно включают фразу SELECT
(4) могут использоваться для изменения данных в базовых таблицах
(5) могут создаваться на основе только одной таблицы
Запрос предназначен для предоставления привилегии на просмотр таблицы Worker зарегистрированному пользователю базы данных User1. files __________________TO User1

Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает безошибочное выполнение операции:

(1) GRANT SELECTION ON Worker
(2) GRANT SELECT ON Worker
(3) PERMIT SELECT FROM Worker
(4) PERMIT SELECT ON TABLE Worker
(5) GRANT SELECT FROM Worker
Запрос предназначен для удаления привилегии на вставку данных в таблицу Worker и просмотр этой же таблицы у пользователя User1. files REVOKE INSERT AND SELECT ON Worker FROM User1

При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки:

(1) вместо ключевого слова REVOKE следовало использовать ключевое слово DENY
(2) после слова INSERT следовало добавить ON Worker
(3) оператор REVOKE не позволяет одновременно удалять несколько привилегий
(4) в качестве разделителя в списке привилегий используется союз AND, что недопустимо
Какие операторы могут использоваться для явного отката транзакций:
(1) EXIT имя точки сохранения
(2) ROLLBACK
(3) CANCEL
(4) STOP
(5) ABORT