Ошибка в боте - table users has 5 columns but 2 values weresupplied
я писал бота для економики и у меня ошибка: Command raised an exception:OperationalError: table users has 5 columns but 2 values weresupplied
создания бд:
@bot.event
async def on_ready():
await bot.change_presence(status=discord.Status.online,
activity=discord.Game("модерирую"))
print(f'--- акаунт бота ---')
print('')
print(f'акаунт: {bot.user.name}')
print(f'id: {bot.user.id}')
print('')
print(f'--- акаунт бота ---')
print('')
cursor.execute("""CREATE TABLE IF NOT EXISTS users (
name TEXT,
id INT,
cash BIGINT,
rep INT,
lvl INT,
ver INT
)""")
код где ошибка:
@bot.command()
async def addbalance(ctx):
if cursor.execute(f"SELECT id FROM users WHERE id = {ctx.author.id}").fetchone() is None:
cursor.execute(f"INSERT INTO users VALUES ('{ctx.author}',{ctx.author.id, 0, 0, 0, 1})")
db.commit()
await ctx.send(embed=discord.Embed(title=f'{ctx.author.mention} ваш баланс официально одкрит!'))
else:
await ctx.send(embed=discord.Embed(title=f'{ctx.author.mention} У вас уже аткритий балас!'))
ошибка в строке:cursor.execute(f"INSERT INTO users VALUES ('{ctx.author}',{ctx.author.id, 0, 0, 0, 1})")
смысле ето команды что добавить пользователя в бд?может ктото знает как ето ришить если да то помогите пожалуйста!зарание спасибо!
Ответы (1 шт):
Автор решения: RTXAuSIDE
→ Ссылка
Потому что вы продолжаете указывать 2-ой объект для таблицы.
if cursor.execute(f"SELECT id FROM users WHERE id = {ctx.author.id}").fetchone() is None:
cursor.execute(f"INSERT INTO users VALUES ('{ctx.author}',{ctx.author.id}, 0, 0, 0, 1)")