🐍 Python: как работать с SQLite

Чтобы работать с базой данных SQLite в Python, вам понадобится стандартный модуль sqlite3.


import sqlite3

# Устанавливаем соединение с базой данных
conn = sqlite3.connect('database.db')

# Создаем курсор для выполнения запросов
cursor = conn.cursor()

# Создаем таблицу
create_table_query = 'CREATE TABLE IF NOT EXISTS students (id INTEGER PRIMARY KEY, name TEXT, age INTEGER)'
cursor.execute(create_table_query)

# Вставляем данные в таблицу
insert_query = "INSERT INTO students (name, age) VALUES ('John', 20)"
cursor.execute(insert_query)

# Обновляем данные в таблице
update_query = "UPDATE students SET age = 21 WHERE name = 'John'"
cursor.execute(update_query)

# Получаем данные из таблицы
select_query = "SELECT * FROM students"
results = cursor.execute(select_query)

# Выводим результаты
for row in results:
  print(row)

# Закрываем соединение
conn.close()
  

В этом примере мы создаем базу данных с именем 'database.db', создаем таблицу 'students', добавляем запись с именем 'John' и возрастом 20, обновляем возраст на 21 для записи с именем 'John' и выводим все записи из таблицы.

Детальный ответ

Python: как работать с SQLite

Python - это мощный и популярный язык программирования, который предоставляет различные инструменты и библиотеки для работы с базами данных. Одной из самых распространенных баз данных, использованных в Python, является SQLite.

Что такое SQLite?

SQLite - это встраиваемая база данных, которая не требует отдельного сервера и может быть использована непосредственно вашим приложением. Она проста в использовании и хранит базу данных в виде обычного файла на диске. SQLite поддерживает стандарт языка SQL и предоставляет функции для работы с данными.

Установка библиотеки SQLite

В Python уже встроена библиотека для работы с SQLite, поэтому нет необходимости устанавливать дополнительные пакеты. Есть два основных модуля: sqlite3 и apsw. Мы рассмотрим sqlite3.

Подключение к базе данных SQLite

Для начала работы с базой данных SQLite в Python вам необходимо подключиться к ней. Для этого нужно импортировать модуль sqlite3 и вызвать функцию connect(), указав путь к базе данных или создав новую базу данных.


import sqlite3

# Подключение к базе данных
conn = sqlite3.connect('database.db')

    

Создание таблицы

После подключения к базе данных вы можете создать таблицу для хранения данных. Для этого создайте объект cursor(), вызвав его на переменной подключения. Затем вызовите метод execute() объекта cursor и передайте SQL-запрос для создания таблицы.


# Создание таблицы
cursor = conn.cursor()

sql_query = '''CREATE TABLE IF NOT EXISTS students (
                    id INTEGER PRIMARY KEY,
                    name TEXT NOT NULL,
                    age INTEGER NOT NULL
                )'''

cursor.execute(sql_query)

    

Добавление данных в таблицу

Чтобы добавить данные в таблицу, используйте метод execute() объекта cursor и передайте SQL-запрос INSERT. Можно подставлять значения в запрос с помощью символов заполнителя (%s) и передавать значения в виде кортежа.


# Добавление данных
sql_query = '''INSERT INTO students (name, age)
                VALUES (%s, %s)'''

data = ('John', 20)
cursor.execute(sql_query, data)

# Сохранение изменений
conn.commit()

    

Получение данных из таблицы

Для получения данных из таблицы используйте метод fetchall() объекта cursor. Он возвращает все строки результата запроса в виде списка кортежей.


# Получение данных
sql_query = '''SELECT * FROM students'''

cursor.execute(sql_query)
data = cursor.fetchall()

for row in data:
    print(row)

    

Обновление данных в таблице

Для обновления данных в таблице используйте SQL-запрос UPDATE. Выберите строки, которые вы хотите обновить, и указываете новые значения.


# Обновление данных
sql_query = '''UPDATE students
                SET age = %s
                WHERE name = %s'''

data = (25, 'John')
cursor.execute(sql_query, data)

# Сохранение изменений
conn.commit()

    

Удаление данных из таблицы

Для удаления данных из таблицы используйте SQL-запрос DELETE. Выберите строки, которые вы хотите удалить.


# Удаление данных
sql_query = '''DELETE FROM students
                WHERE age < %s'''

data = (18,)
cursor.execute(sql_query, data)

# Сохранение изменений
conn.commit()

    

Закрытие соединения с базой данных

После завершения работы с базой данных необходимо закрыть соединение, чтобы освободить ресурсы. Для этого вызовите метод close() на переменной подключения.


# Закрытие соединения
conn.close()

    

Заключение

В этой статье мы рассмотрели, как использовать Python для работы с базой данных SQLite. Мы изучили, как подключиться к базе данных, создать таблицу, добавить, получить, обновить и удалить данные. SQLite предоставляет простой и удобный способ хранения и управления данными в Python-приложениях.

Видео по теме

SQLITE 3 Python [ 1 ] | Создание таблицы, добавление данных, проверка и вывод.

База данных SQLite в Python. Создание БД, вставка в БД | Базовый курс. Программирование на Python

Работа с Базой Данных SQLite в Python

Похожие статьи:

🐍 Python: как работать с SQLite