Тест: Тест SQL


Список вопросов


1. Что такое схема базы данных?

1) Схема базы данных (Database schema) — это описанная на поддерживаемом СУБД формальном языке структура.
2) Схема базы данных (Database schema) — это графическое представление взаимосвязей таблиц.
3) Описание полей и типов данных в конкретной таблице.
4) Описание взаимосвязи объектов в базе данных.

2. Какая из нижеуказанных команд создает таблицу в базе данных в PostgreSQL?

1) CREATE TABLE distributors (did integer PRIMARY KEY DEFAULT nextval('serial'), name varchar(40) NOT NULL CHECK (name <> ''));
2) CREATE TABLE `distributors` (`did` INT NOT NULL AUTO_INCREMENT, `name` VARCHAR(40) NOT NULL,PRIMARY KEY (`did`)) COLLATE='utf8_general_ci' ENGINE=InnoDB;
3) CREATE TABLE [dbo].[distributors](did INT NOT NULL IDENTITY(1,1) primary key, name VARCHAR(40) null);
4) CREATE TABLE weather (city varchar(80), temp_lo int not null, temp_hi int, prcp real, date date);
5) db.createTable(new { did = 1, name = "ООО 'Независимость'"}); db.commit();
6) Ни одна из перечисленных.

3. Какие команды SQL используются для управления структурой данных?

1) CREATE, SELECT, UPDATE, DELETE
2) CREATE, ALTER, DROP
3) CREATE, ALTER, DROP, TRUNCATE
4) INSERT, SELECT, UPDATE, DELETE

4. Тип VARCHAR - это

1) Тип данных, который позволяет хранить произвольные бинарные данные.
2) Числовой тип, для хранения целых чисел.
3) Строка фиксированной длины, которая справа дополняются пробелами до указанной длины, при хранении.
4) Строка переменной длины, где конечные пробелы удаляются при сохранении (в отличие от спецификации ANSI SQL).

5. Отношения находятся в какой нормальной форме, если, все его атрибуты являются простыми, все домены используют скалярные значения и нет повторения строк в таблице?

1) 2-НФ
2) 1-НФ.
3) 3-НФ.
4) Не подходит ни к одному из нормальных форм.

6. Какие требования предъявляются к 2-НФ?

1) Таблица уже находится в 1-НФ
2) Каждый неключевой атрибут таблицы неприводимо зависит от полного ключа.
3) Каждый неключевой атрибут таблицы нетранзитивно зависит от полного ключа.
4) Все указанные требования.
5) Только требования 1 и 2

7. Какие действия наиболее вероятно могут привести к обрушению базы данных вследствие переполнения памяти?

1) SELECT *
2) INNER JOIN
3) OUTER JOIN
4) SELF JOIN
5) CROSS JOIN
6) четыре предыдущих
7) первая и пятая команда
8) третья и пятая команда

8. Какой из указанных запросов соответствует картинке пересекающихся таблиц - множеств: "А кроме В"?

1) SELECT u.id, u.name, d.name AS d_name FROM users u INNER JOIN departments d N u.d_id = d.id
2) SELECT u.id, u.name, d.name AS d_name FROM users u LEFT OUTER JOIN departments d ON u.d_id = d.id
3) SELECT u.id, u.name, d.name AS d_name FROM users u LEFT OUTER JOIN departments d ON u.d_id = d.id WHERE d.id IS NULL
4) SELECT u.id, u.name, d.name AS d_name FROM users u RIGHT OUTER JOIN departments d ON u.d_id = d.id

9. Какой из указанных запросов соответствует картинке пересекающихся таблиц - множеств: "А (т.е. включая область пересечения А и В)"?

1) SELECT u.id, u.name, d.name AS d_name FROM users u INNER JOIN departments d ON u.d_id = d.id
2) SELECT u.id, u.name, d.name AS d_name FROM users u LEFT OUTER JOIN departments d ON u.d_id = d.id
3) SELECT u.id, u.name, d.name AS d_name FROM users u LEFT OUTER JOIN departments d ON u.d_id = d.id WHERE d.id IS NULL
4) CT u.id, u.name, d.name AS d_name FROM users u RIGHT OUTER JOIN departments d ON u.d_id = d.id

10. Запрос SELECT * FROM table1 WHERE name NOT IN (SELECT name FROM table2)

1) Эквивалентен запросу INNER JOIN между таблицами table1, table2 связанному по полю name.
2) Возвращает все записи таблицы table1, которые совпадают по полю name, с записями из таблицы table2.
3) Возвращает все записи таблицы table1, которые отсутствуют в таблице table2, в сравнении по полю name.
4) Запрос имеет ошибку синтаксиса и не отработает.

11. Какое или какие из нижеуказанных ограничений относятся к оператору UNION MySQL?

1) Только последняя команда SELECT может включать оператор INTO OUTFILE.
2) Если не используется ключевое слово ALL для UNION, все возвращенные строки будут уникальными, так как по умолчанию подразумевается DISTINCT для всего результирующего набора данных.
3) Если указать ключевое слово ALL, то результат будет содержать все найденные строки из всех примененных команд SELECT.
4) Если для всего результата UNION необходимо применить оператор ORDER BY, следует использовать круглые скобки.
5) Варианты 2-4
6) Варианты 1-4

12. Какая группа операторов позволяет осуществить проверку условий и возвратить в зависимости от выполнения того или иного условия тот или иной результат?

1) CASE ... WHEN ... THEN... ELSE... END
2) IF ... ELSE ...
3) SHOW COLUMNS
4) TRUNCATE TABLE

13. SELECT p.uid, p.amount FROM payments p INNER JOIN (SELECT uid, MAX(pay_date) AS max_dt FROM payments GROUP BY uid) sel ON p.uid = sel.uid AND p.pay_date = sel.max_dt;

1) Выводит дату и сумму последнего платежа для каждого пользователя.
2) Выводит сумму последнего платежа для каждого пользователя.
3) Выводит общую сумму всех платежей для каждого пользователя.
4) Запрос имеет ошибку синтаксиса и не отработает.

14. Какая из агрегирующих функций возвращает количество различающихся величин со значением, не равным NULL?

1) COUNT(expr)
2) COUNT(DISTINCT expr,[expr...])
3) AVG(expr)
4) MIN(expr)

15. Эти индексы не перестраивают физическую структуру таблицы, а лишь организуют ссылки на соответствующие строки. Для идентификации нужной строки в таблице этот индекс организует специальные указатели, включающие в себя: информацию об идентификационном номере файла, в котором хранится строка; идентификационный номер страницы соответствующих данных; номер искомой строки на соответствующей странице; содержимое столбца.

1) Кластерный индекс.
2) Полнотекстовый индекс.
3) Композитный некластерный индекс.
4) Некластерный индекс.

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

1) PLAN TABLE
2) EXPLAIN
3) SHOW ME THE MONEY
4) SHOW TABLE STATUS

17. Это свойство гарантирует, что никакая транзакция не будет зафиксирована в системе частично. Будут либо выполнены все её подоперации, либо не выполнено ни одной.

1) Изолированность.
2) Согласованность.
3) Атомарность.
4) Открытый исходный код.

18. Уровень изоляции, который гарантирует только отсутствие потерянных обновлений. Если несколько параллельных транзакций пытаются изменять одну и ту же строку таблицы, то в окончательном варианте строка будет иметь значение, определенное всем набором успешно выполненных транзакций. При этом возможно считывание не только логически несогласованных данных, но и данных, изменения которых ещё не зафиксирован.

1) Read uncommitted.
2) Read committed.
3) Repeatable read.
4) Serializable.

19. Read committed - это

1) Уровень, при котором читающая транзакция «не видит» изменения данных, которые были ею ранее прочитаны. При этом никакая другая транзакция не может изменять данные, читаемые текущей транзакцией, пока та не окончена.
2) Уровень обеспечивающий защиту от чернового, «грязного» чтения, тем не менее, в процессе работы одной транзакции другая может быть успешно завершена и сделанные ею изменения зафиксированы. В итоге первая транзакция будет работать с другим набором данных.
3) Уровень изолированности, где транзакции полностью изолируются друг от друга, каждая выполняется так, как будто параллельных транзакций не существует.
4) Такого уровня изоляции не существует.

20. Какие типы параметров существуют в PostgreSQL, при создании хранимых процедур?

1) IN, OUT
2) IN, OUT, VAR, UNDEFINED
3) IN, OUT, INOUT, VARIADIC
4) IN, OUT, REFERENCE