Discord botu "name 'cursor' is not defined" hatası

Python:
client = commands.Bot(command_prefix='!', intents=discord.Intents.all())
Kodunu şu şekilde değiştirin.
Python:
class MyBot(commands.Bot):
    def __init__(*args, **kwargs):
        super().__init__(*args, **kwargs)
        self.db = None
        self.cursor = None

    async def setup_hook(self):
        self.db = mysql.connector.connect(......)
        self.cursor = self.db.cursor()

client = MyBot(command_prefix='!', intents=discord.Intents.all())

Daha sonra bunun dışındaki cnx ve cursor değişkenlerini tanımladığınız satırları silin. Komut fonksiyonlarında cursor kullandığınız yerlerin başına client ekleyin. Yani cursor.fetchall() ise client.cursor.fetchall() olarak değiştirin.
Böyle bir hata aldım dediklerini yaptığımda
1671398031469.png


Sanırsam eksik bir kod kullanıyorsunuz.



İlk önce yüklemeden deneyin. Sonra olmazsa yükleyin.
ikisindede aynı hata devam etti
Böyle bir hata aldım dediklerini yaptığımda
1671398031469.png
burdaki hata;
 
self.db kodu için self kütüphanesini yüklemem gerekir mi?
self bir kütüphane değil, Python'daki içinde bulunulan sınıfı ifade eden obje. O satırdaki noktalı kısmı kendi veritabani değerlerinizle doldurmayı unutmayın.

Böyle bir hata aldım dediklerini yaptığımda
Eki Görüntüle 1606999


ikisindede aynı hata devam etti

burdaki hata;
Kodu aynı mesajdan tekrar kopyalayabilir misiniz? Bazı hataları düzelttim.
 
self bir kütüphane değil, Python'daki içinde bulunulan sınıfı ifade eden obje. O satırdaki noktalı kısmı kendi veritabani değerlerinizle doldurmayı unutmayın.


Kodu aynı mesajdan tekrar kopyalayabilir misiniz? Bazı hataları düzelttim.
ordaki noktalı kısıma ne yazıcağımı hala anlayamadım
 
Nasıl yani, bir örnek yazabilir misiniz? Cahilliğimi mazur görün. Şifremizin 12345 olduğunu varsayalım.
IMG_20221219_002029.jpg
Buradaki değerleri koyacaksınız. Yani o satır şunun gibi olacak:
Python:
self.db = mysql.connector.connect(host='localhost', user='root', password='12345', database='101mb')
 
MySQL sürümünüz eski gibi duruyor. Güncellemeyi veya farklı bir veritabanına geçmeyi deneyebilirsiniz. Başka bir çözüm olarak da MySQL modülünü uyumlu olması için daha eski sürüme düşürebilirsiniz. Bu kodu CMD'ye girin.
Kod:
pip install mysql-connector-python==8.0.29
 
MySQL sürümünüz eski gibi duruyor. Güncellemeyi veya farklı bir veritabanına geçmeyi deneyebilirsiniz. Başka bir çözüm olarak da MySQL modülünü uyumlu olması için daha eski sürüme düşürebilirsiniz. Bu kodu CMD'ye girin.
Kod:
pip install mysql-connector-python==8.0.29
birkaç hata daha var ve bunlar windowsla alakalı sanırım. sizinle yarın buradan iletişime geçicem. Çok teşekkür ederim

MySQL sürümünüz eski gibi duruyor. Güncellemeyi veya farklı bir veritabanına geçmeyi deneyebilirsiniz. Başka bir çözüm olarak da MySQL modülünü uyumlu olması için daha eski sürüme düşürebilirsiniz. Bu kodu CMD'ye girin.
Kod:
pip install mysql-connector-python==8.0.29
Böyle bir hata alıyorum.


1671465801485.png

Peki kodu şu şekilde düzeltebilirmiyiz mesela discord id'sinden sorgulama yapmak istiyorsa;

!id kullanıcıid
yazdığı zaman o id'yi veritabanında taratıp o id'ye eşleşen kullanıcı adını özel mesaj olarak gönderecek
 
Son düzenleme:

Yeni konular

Geri
Yukarı