import mysql.connector
from tabulate import tabulate

def obter_tabelas(cursor):
    cursor.execute("SHOW TABLES")
    return [tabela[0] for tabela in cursor.fetchall()]

def obter_descricao_tabela(cursor, tabela):
    cursor.execute(f"DESC {tabela}")
    return cursor.fetchall()

def main():
    conexao = mysql.connector.connect(
        host="localhost",
        user="victor",
        password="aerofolio",
        database="qualifica_brasil"
    )
    cursor = conexao.cursor()
    
    tabelas = obter_tabelas(cursor)
    
    for tabela in tabelas:
        descricao = obter_descricao_tabela(cursor, tabela)
        print(f"\nTabela: {tabela}")
        print(tabulate(descricao, headers=["Campo", "Tipo", "Null", "Key", "Default", "Extra"], tablefmt="grid"))
    
    cursor.close()
    conexao.close()

if __name__ == "__main__":
    main()

