Error AttributeError: 'Connection' object has no attribute 'fetchall'

Question:

I have the following SQL database details:

import sqlalchemy as sch
from config import Config

db_uri = os.environ["SQLALCHEMY_DATABASE_URI"] + os.environ["DB_NAME"]

in the env file I have these

SQLALCHEMY_DATABASE_URI = 'mysql+pymysql://*****:*****@instance-amazonaws.com:3306/'
DB_NAME = 'DB_NAME'

Now

db_engine = extrac_db.create_engine(Config.db_uri)
db_connection = db_engine.connect()

When I try this query:

db_connection.execute("select count(*) from table")
query_result = db_connection.fetchall()

It gives the following error:

AttributeError: 'Connection' object has no attribute 'fetchall'

What is the problem here!!!?

Asked By: Esma Shelby

||

Answers:

Wild guess:

query = db_connection.execute("select count(*) from table")
query_result = query.fetchall()
Answered By: rasjani

This might work with SQLAlchemy

import import sqlalchemy as sch
import pprint

with db_engine.begin() as conn:
    qry = sch.text("select count(*) from table")
    resultset = conn.execute(qry)
    results_as_dict = resultset.mappings().all()
    pprint(results_as_dict)
    
Answered By: Shubham Srivastava