Python sqlite tablo isimlerini almama

import sqlite3
class SQL(sqlite3.Connection):
    def __init__(self, data = "kelimedb.sql "):
        super().__init__(data)
        self.imlec = self.cursor()
    def addTable(self,table_Name):
        self.imlec.execute(f"CREATE TABLE IF NOT EXISTS {table_Name} (artikel,kelime,anlam)")
        self.commit()
    def addValue(self,artikel,kelime,anlam):
        self.imlec.execute(f"INSERT INTO test  VALUES ('{artikel}','{kelime}','{anlam}')")
        self.commit()
    def veriAl(self):
        self.imlec.execute("SELECT * FROM test ")
        veri = self.imlec.fetchall()
        print(veri)
    """ 
    def tables(self):
        self.imlec.execute("SELECT * FROM SYS.TABLES")
        veri = self.imlec.fetchall()
        print(veri)  
        
        execute fonksiyonuna 
        SELECT * FROM SYS.TABLES
        SELECT * FROM INFORMATION_SCHEMA.TABLES
        SELECT '[' + SCHEMA_NAME(schema_id) + '].[' + name + ']' AS SchemaTable FROM sys.tables
        kodlarını denedim ama veri tabanındaki tablo isimlerini almaya çalışırken hata alıyorum

    """

tkinter üzerinde bir buttonun tablo ismini seçmesi lazım ama hata alıyorum tables fonksiyonunda hata alıyorum tablo isimlerini nasıl alabilirim.

Merhaba,

Şöyle deneyin:

SELECT * FROM sqlite_master WHERE type = 'table'

çok teşekkür ederim :smiley: dün ki sorumada yanıt vermiştiniz burdan çıkan değeri foreach döngüsüne almaya çalıştığım zaman hata alıyorum nasıl foreach alabilirim

Aşağıdaki kodu inceleyin lütfen:

import sqlite3


class SQL(sqlite3.Connection):
    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
        self.cur = self.cursor()

    def tables(self):
        self.cur.execute("SELECT name FROM sqlite_master WHERE type = 'table'")
        veri = self.cur.fetchall()
        return veri
        
        
sql = SQL("test.db")
sql.execute("CREATE TABLE IF NOT EXISTS tablo1 (x, y)")
sql.execute("CREATE TABLE IF NOT EXISTS tablo2 (x, y)")
sql.execute("CREATE TABLE IF NOT EXISTS tablo3 (x, y)")
for name in sql.tables():
    print(name)

Çıktı:

('tablo1',)
('tablo2',)
('tablo3',)

Teşekkür ederim oldu