Описание
Ответы к тесту находятся в профиле
Тест 7 по дисциплине "Высокоуровневые методы программирования" в МУИВ (Московский университет имени С. Ю. Витте)
7-й модуль "Программирование запросов к базам данных (бд)"
2-й курс
Python, sqlite3
======================================================================================================
Вопросы:
======================================================================================================
1) Что вызовет ошибку? Выберите один или несколько ответов:
Попытка вызвать commit() у курсора
Создание функции с неопределенным кол-вом параметров
Передача в select запрос с (?) одного числа
Попытка вызвать execute у соединения
2) Отметьте методы, которые есть у соединения
Выберите один или несколько ответов: commit interrupt rollback create_index repeat
3) Отметьте fetch-функции в SQLite:
Выберите один или несколько ответов: fetchrow fetchone fetchall fetchlast
4) Для каких типов данных существует встроенный адаптер? Выберите один ответ: datetime Словарь Point Cписок Кортеж
5) Какие типы данных может возвращать метод finalize? Выберите один ответ:
Абсолютно любые типы данных
Типы данных, которые поддерживаются SQLite и типы данных, для которых существуют конвертеры
Только типы данных, которые поддерживаются SQLite
6) Отметьте execute-функции в sqlite3 Выберите один или несколько ответов: executefunction executescript executestatement executemany execute
7) В какой тип данных Python можно преобразовать TEXT Выберите один или несколько ответов: float str int
8) Какие методы должны быть у класса, описывающего агрегатную функцию
Выберите один или несколько ответов: step start __init__ finalize final
9)Отметьте правильные строки кода.
Выберите один или несколько ответов:
con.create_function("func", -1, func, deterministic=False)
con.create_function("func", -1, func)
con.create_function(func, "func", 1)
con.create_function("func", 1, func, False)
10) Отметьте строчки, которые написаны с ошибками. con – соединение, cur – курсор. Выберите один или несколько ответов
cur.executemany("INSERT INTO t VALUES(?, ?);", [(1, 10)])
cur.executemany("INSERT INTO t VALUES(?, ?);" ? (1, 10))
data = con.execute("INSERT INTO t VALUES(1, 10);").commit()
data = con.execute("SELECT * FROM t;").fetchall()
11) В какой последовательности указываются аргументы при создании своей функции?
func deterministic name num_params *
12) Адаптер производит преобразование типов в одну сторону, а _____ — в другую
13) Установите правильную последовательность создания вызова методов при создании таблицы, добавлении в нее значения и выполнении select-запроса:
execute,
commit,
fetchall
14) Если использовать у соединения метод ________ , то он создаст и вернет курсор
15) В какой последовательности указываются аргументы при создании своей агрегатной функции? name num_params, aggrefate_class
16) Соотнесите между собой объект и метод методы: fetchall, rollback, __conform__ объекты: курсор, соединение, класс адаптер
17) Метод ______ сохраняет все внесенные в БД изменения
18) Соотнесите между собой типы данных в Python и в SQLite
python: float, bytes, str, int, none
sqlite: REAL, BLOB, TEXT, INT, NULL
19) Программа делает запрос в базу данных каждый час, а производит изменения базы данных только при наступлении определенного события, которое отслеживается вторым потоком. Когда лучше делать backup()?
Выберите один ответ:
Каждый час
Сразу после наступления события
Каждый день
Лучше уточнить у руководства проекта
Раз в 5 событий
20) Был создан конвертер для типа данных PLANET, который хранит информацию о планете в солнечной системе. Этот конвертер был зарегистрирован с параметром detect_types, равным PARSE_DECLTYPES. Как правильно создать таблицу, которая будет хранить информацию о планетах?
create table planets(planet)
create table planets(planet varchar(255))
create table planets(planet planet)