def METHOD_NAME(self, schema):
    schemas_query = "show schemas"
    tables_query = "show tables in %s"
    columns_query = "show columns in %s"
    for schema_name in [
        a for a in [str(a["Database"]) for a in self._run_query_internal(schemas_query)] if len(a) > 0
    ]:
        for table_name in [
            a
            for a in [
                str(a["Tables_in_%s" % schema_name]) for a in self._run_query_internal(tables_query % schema_name)
            ]
            if len(a) > 0
        ]:
            table_name = ".".join((schema_name, table_name))
            columns = [
                a
                for a in [str(a["Field"]) for a in self._run_query_internal(columns_query % table_name)]
                if len(a) > 0
            ]
            schema[table_name] = {"name": table_name, "columns": columns}
    return list(schema.values())