*With version 1.3:*

Base = declarative_base()


class User(Base):
__tablename__ = "user"
id = Column(Integer, primary_key=True)
name = Column(String)


Base.metadata.create_all(engine)

print(pd.__version__) # 1.3.2
print(sa.__version__) # 1.3.24

session = Session(engine)
session.add_all([User(name="Gord"),User(name="Bob"),])
session.commit()
result_set = session.query(User.id, User.name)
df = pd.DataFrame(result_set)
print(df)
"""
id name
0 1 Gord
1 2 Bob
"""

*With version 1.4:*

print(pd.__version__) # 1.3.2
print(sa.__version__) *# 1.4.23*

session = Session(engine)
session.add_all([User(name="Gord"),User(name="Bob"),])
session.commit()
result_set = session.query(User.id, User.name)
df = pd.DataFrame(result_set)
print(df)
"""
0 1
0 1 Gord
1 2 Bob
"""

On Tuesday, August 31, 2021 at 2:38:18 PM UTC-6 Mike Bayer wrote:

>
>
> On Tue, Aug 31, 2021, at 3:10 PM, Terrence-Monroe: Brannon wrote:
>
>
> Creating a pandas dataframe that contained descriptive column names 
> formerly was as easy as:
>
> result_set = session.query(cls.column_1)
> df = pandas.Dataframe(result_set)
> print df.column_1
>
> but while this works in 1.3.20, in later versions of SA such as 1.4.19,  
> there is not enough column info supplied by SA to form the same symbolic 
> column names. Thus, the above code would fail when attempting to access 
> df.column_1 in SA 1.4.19 but not fail in SA 1.3.20.
>
>
>
> not familiar with this change, nothing should have changed with how 
> session.query() returns rows and this may be some incompatibility with 
> pandas.  Upgrade to the latest Pandas and make sure the behavior remains, 
> then please provide an MCVE, thanks
>
>
>
>
>
> Anyway to supply a flag to query() to provide the extra column that 
> existed in older SA versions?
>
>
> -- 
> SQLAlchemy - 
> The Python SQL Toolkit and Object Relational Mapper
>  
> http://www.sqlalchemy.org/
>  
> To post example code, please provide an MCVE: Minimal, Complete, and 
> Verifiable Example. See http://stackoverflow.com/help/mcve for a full 
> description.
> --- 
> You received this message because you are subscribed to the Google Groups 
> "sqlalchemy" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to sqlalchemy+...@googlegroups.com.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/sqlalchemy/2664002d-25cc-450d-bc51-8652a7df3d53n%40googlegroups.com
>  
> <https://groups.google.com/d/msgid/sqlalchemy/2664002d-25cc-450d-bc51-8652a7df3d53n%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>
>
>

-- 
SQLAlchemy - 
The Python SQL Toolkit and Object Relational Mapper

http://www.sqlalchemy.org/

To post example code, please provide an MCVE: Minimal, Complete, and Verifiable 
Example.  See  http://stackoverflow.com/help/mcve for a full description.
--- 
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sqlalchemy+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sqlalchemy/c47f5717-8ddc-43c5-b018-43639f0867e4n%40googlegroups.com.

Reply via email to