Чтение JSON файла и запись в SQLite
Здравствуйте! В предыдущей статье мы начали cоздание базы sqlite, для ее заполнения. В сегодняшней статье мы сосредоточимся на процессе переноса данных из JSON файла в базу данных SQLite. Мы уже подготовили базу данных и создали таблицу. Теперь приступим к чтению и записи данных.
Шаг 3: Чтение данных из JSON файла
В вашем JSON файле каждый объект находится на новой строке, поэтому нам нужно построчно читать файл. Для этого используется метод json.loads(), который преобразует строку JSON в словарь.
import json
# Функция для вставки данных из JSON в SQLite
def insert_data(json_file):
with open(json_file, 'r', encoding='utf-8') as file:
for line in file:
try:
# Читаем каждую строку как отдельный JSON объект
data = json.loads(line.strip())
# Вставляем данные в таблицу
cursor.execute('''
INSERT INTO users (first_name, username)
VALUES (?, ?)
''', (data['first_name'], data['username']))
except json.JSONDecodeError as e:
print(f"Ошибка JSON: {e}")
Здесь мы открываем файл, читаем каждую строку, декодируем её в словарь и записываем данные в базу с помощью SQL-запроса.
Шаг 4: Сохранение изменений в базе данных
После того как данные были вставлены в таблицу, нам нужно сохранить изменения и закрыть соединение с базой данных:
# Сохраняем изменения
conn.commit()
# Указываем путь к файлу JSON
json_file = 'name.json'
# Вставляем данные
insert_data(json_file)
# Закрываем соединение с базой данных
conn.close()
Мы используем conn.commit(), чтобы зафиксировать изменения в базе, и conn.close() для закрытия соединения.
Заключение
Теперь вы знаете, как перенести данные из JSON файла в базу данных SQLite. Это полезный навык, который можно адаптировать для работы с любыми данными. Вы можете обрабатывать массивы объектов, расширять базу данных и работать с более сложными структурами.
Чтобы глубже освоить Python и научиться применять его в реальных проектах, рекомендуем пройти курс Программирование на Python с Нуля до Гуру