@Geryqwe

Как создать таблицу базы данных с помощью sqlite3 в discord?

Решил создать экономического дискорд бота, никогда с когами не работал, поэтому смотрел видео от зарубежного ютубера и использовал официальную документацию
В видео автор написал один код, а в документации другой, какой-бы я не использовал, оба варианта не верны

Код:
Main.py

import discord
from event import Event
import sqlite3
from discord.ext import commands
import random


bot = commands.Bot(command_prefix='%', intents=discord.Intents.all())


bot.add_cog(Event(bot))



bot.run("token")

event.py

import discord
from discord.ext import commands
import asyncio
import random
import sqlite3

class Event(commands.Cog):
    def __init__(self, bot):
        self.bot = bot


    @commands.Cog.listener()
    async def on_ready(self):
        db = sqlite3.connect("main.sqlite")
        cursor = db.cursor()
        cursor.execute('''CREATE TABLE IF NOT EXISTS main (
        user_id INTERGER, wallet INTERGER, bank INTERGER
        )''')
        print("bot diko pon")


    @commands.Cog.listener()
    async def on_message(self, message):
        if message.author.bot:
            return
                
        author = message.author
        db = sqlite3.connect("main.sqlite")
        cursor = db.cursor()
        cursor.execute(f"SELECT user_id FROM main WHERE user_id = {author.id}")
        result = cursor.fetchone()
        if result is None:
            sql = ("INSERT INTO main(user_id, wallet, bank) VALUES (?, ?, ?)")
            val = (author.id, 100, 0)
            cursor.execute(sql, val)

        db.commit()
        cursor.close()
        db.close()

ошибка:

c:\Users\mihoi\Desktop\cmc bot\Main.py:11: RuntimeWarning: coroutine 'BotBase.add_cog' was never awaited
  bot.add_cog(Event(bot))

В документации написано использовать await bot.add_cog(Event(bot)), такой вариант также неверный.
  • Вопрос задан
  • 200 просмотров
Пригласить эксперта
Ответы на вопрос 1
fenrir1121
@fenrir1121 Куратор тега discord.py
Начни с документации
Как создать таблицу базы данных с помощью sqlite3 в discord?

Так же как и без discord обычным SQL запросом. Ваш будет работать, хотя на код в on_message очень больно смотреть.
ошибка : c:\Users\mihoi\Desktop\cmc bot\Main.py:11: RuntimeWarning: coroutine 'BotBase.add_cog' was never awaited
bot.add_cog(Event(bot))

Не имеет никакого отношения к таблицам, только к вашему не пониманию короутин. Откройте любой официальный пример или любой репозиторий с пустым шаблоном бота, например Python-Discord-Bot-Template и найдите 10 отличий.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
24 нояб. 2024, в 23:46
20000 руб./за проект
24 нояб. 2024, в 23:07
2000 руб./за проект