У меня есть код скулайт и когда я запускаю бота выходит ошибка помогите Сам код:
Выходит ошибка с дб Sqlite3. Вот код в котором возникает ошибка:
@bot.event
async def on_ready():
cursor.execute("""CREATE TABLE IF NOT EXISTS users (name TEXT, id INT, cash BIGINT, prem INT, bank BIGINT, server_id INT, case_money INT)""")
cursor.execute("""CREATE TABLE IF NOT EXISTS shop (role_id INT, id INT, cost BIGINT)""")
for guild in bot.guilds:
for member in guild.members:
if cursor.execute(f"SELECT id FROM users WHERE id = {member.id}").fetchone() is None:
cursor.execute(f"""INSERT INTO users VALUES ("{str(member).replace("'", "")}", {member.id}, 0, 0, 0, {guild.id}, 1)""")
else:
pass
connection.commit()
print('bot connected')
Ошибка:
cursor.execute(f"""INSERT INTO users VALUES ("{str(member).replace("'", "")}", {member.id}, 0, 0, 0, {guild.id}, 1)""")
sqlite3.OperationalError: near "Aila": syntax error
Ответы (1 шт):
Автор решения: Игра Мага
→ Ссылка
Нужно изменить cursor.execute(f"""INSERT INTO users VALUES ("{str(member).replace("'", "")}", {member.id}, 0, 0, 0, {guild.id}, 1)"""). Он написан полностью неправильно. Правильный код снизу:
@bot.event
async def on_ready():
cursor.execute("""CREATE TABLE IF NOT EXISTS users (name TEXT, id INT, cash BIGINT, prem TEXT, bank BIGINT, server_id INT, case_money INT)""")
cursor.execute("""CREATE TABLE IF NOT EXISTS shop (role_id INT, id INT, cost BIGINT)""")
for guild in bot.guilds:
for member in guild.members:
if cursor.execute("SELECT id FROM users WHERE id = ?", ( member.id, )):
cursor.execute("INSERT INTO users VALUES (?, ?, 0, 0, 0, ?, 1)", ( str(member), member.id, guild.id ) )
else:
pass
connection.commit()
print('bot connected')