Вопрос:

Что выведет этот код?

Ответ:

Этот код создаёт базу данных SQLite с именем 'example.db', если она не существует, создаёт таблицу 'users' с двумя столбцами: 'id' (целочисленный первичный ключ) и 'name' (текст). Затем он вставляет строку с именем 'Alice' в таблицу 'users'. После этого он выбирает все строки из таблицы 'users' и выводит результат на экран.

Результат выполнения кода:

[ (1, 'Alice')]

Объяснение:

  1. import sqlite3: Импортируется модуль sqlite3 для работы с базой данных SQLite.
  2. conn = sqlite3.connect('example.db'): Устанавливается соединение с базой данных 'example.db'. Если файл не существует, он будет создан.
  3. cursor = conn.cursor(): Создается объект курсора для выполнения SQL-запросов.
  4. cursor.execute('CREATE TABLE IF NOT EXISTS users (id INTEGER PRIMARY KEY, name TEXT)'): Создается таблица 'users', если она еще не существует. 'id' - первичный ключ (уникальный идентификатор), 'name' - текстовое поле.
  5. cursor.execute('INSERT INTO users (name) VALUES (?)', ('Alice',)): В таблицу 'users' добавляется запись с именем 'Alice'.
  6. conn.commit(): Фиксируются изменения в базе данных (сохраняется вставка).
  7. cursor.execute('SELECT * FROM users'): Выбираются все записи из таблицы 'users'.
  8. rows = cursor.fetchall(): Все выбранные записи сохраняются в переменной rows в виде списка кортежей.
  9. conn.close(): Закрывается соединение с базой данных.
  10. print(rows): Выводится содержимое переменной rows, которая содержит список кортежей, представляющих строки таблицы 'users'.

Таким образом, код выведет список кортежей, где каждый кортеж представляет собой строку из таблицы 'users'. В данном случае, таблица содержит одну строку с id = 1 (автоматически присвоенным, так как это PRIMARY KEY) и именем 'Alice'.

Смотреть решения всех заданий с листа

Похожие