Ошибка sqlite3.OperationalError: no such column, как исправить?
Я пишу discord бота(discord.py) на Python, и мне нужно чтобы при включении бота создавалась и заполнялась таблица faculties в бд. Вот что я сделал:
@bot.event
async def on_ready():
"""Функция on_ready выполняется при запуске бота и создаёт таблицу users
в бд, также добавляет в бд имена, id, количество xp и сервер всех
участников, которых нет в бд.
"""
DiscordComponents(bot)
faculties = [
"gryffindor",
"slytherin",
"hufflepuff",
"ravenclaw"
]
cursor.execute("""CREATE TABLE IF NOT EXISTS faculties (
name TEXT,
points INT,
server_id INT
)""")
for guild in bot.guilds:
for faculty in faculties:
if cursor.execute(f"SELECT name FROM faculties WHERE name = {faculty}") is None:
cursor.execute(f"INSERT INTO faculties VALUES ('{faculty}', 0, {guild.id})")
connect.commit()
print("Bot connected!")
Но при запуске бота я получаю такую ошибку:
Ignoring exception in on_ready
Traceback (most recent call last):
File "C:\Users\belog\hat_dispenser\venv\lib\site-packages\discord\client.py", line 343, in _run_event
await coro(*args, **kwargs)
File "C:\Users\belog\hat_dispenser\main.py", line 72, in on_ready
if cursor.execute(f"SELECT name FROM faculties WHERE name = {faculty}") is None:
sqlite3.OperationalError: no such column: gryffindor