Импорт excel в бд sqlite

Как сделать так, чтобы при переносе данных excel в sqlite столбец А и Б генерировал диапазон числа range() У меня 10 000 строк с разными диапазонами. введите сюда описание изображения Вот код


import os
import sqlite3
import openpyxl


def export_to_sqlite():
    """Экспорт данных из xlsx в sqlite"""

    # Текущая папка
    prj_dir = os.path.abspath(os.path.curdir)
    a = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

    # SQL name БД
    base_name = 'Excel_sqlite.db'

    # метод sqlite3.connect автоматически создаст базу, если ее нет
    connect = sqlite3.connect(prj_dir + '/' + base_name)
    # курсор - это специальный объект, который делает запросы и
    # получает результаты запросов
    cursor = connect.cursor()

    # создание таблицы если ее не существует
    cursor.execute("""CREATE TABLE IF NOT EXISTS Mobile
                (num INTEGER PRIMARY KEY,
                con INTEGER,
                region TEXT)
                """)

    # Читаем файл и лист книги excel
    file_to_read = openpyxl.load_workbook('abcd.xlsx', data_only=True)
    sheet = file_to_read['abc']

    # Цикл по строкам начиная со второй (в первой заголовки)
    for i in range(2, sheet.max_row + 1):
        # Объявление списка
        data = []
        # Цикл по столбцам от 1 до 3
        for col in range(1, 4):
            
            # value содержит значение ячейки с координатами i col
            value = sheet.cell(i, col).value
            # Список который мы потом будем добавлять
            data.append(value)

        # Вставка данных в поля таблицы
        cursor.execute(F"INSERT INTO Mobile VALUES (?, ?, ?);", (data[0], data[1], data[2]))

    connect.commit()
    connect.close()

export_to_sqlite()

Ответы (0 шт):