【发布时间】:2023-03-26 12:39:01
【问题描述】:
我正在尝试通过 Python 中的 SQLAlchemy 将字典加载到 Postgres 数据库中。当前存在的字典是:
FinalData = {'GAME_ID': {0: '0021600457', 1: '0021600457', 2: '0021600457', 3:
'0021600457', 4: '0021600457', 5: '0021600457'}, 'TEAM_ID': {0: 1610612744, 1:
1610612744, 2: 1610612744, 3: 1610612744, 4: 1610612744, 5: 1610612744},
'TEAM_ABBREVIATION': {0: 'GSW', 1: 'GSW', 2: 'GSW', 3: 'GSW', 4: 'GSW', 5:
'GSW'}}
我编写了以下代码(基于我在这里和在线找到的其他教程/问题)。如果我只插入 1 条记录,我就可以完成这项工作——因为我可以手动将属性分配给 PlayerStats。但是由于字典有多个记录,我不知道如何将它们全部传递到会话语句中。
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import Column, Integer, String
Base = declarative_base()
class PlayerStats(Base):
__tablename__ = 'PlayerStats'
GAME_ID = Column(String(10), primary_key=True)
TEAM_ID = Column(String(10))
TEAM_ABBREVIATION = Column(String(8))
###################################################
## I DON'T KNOW WHAT GOES HERE TO BRIDGE THE GAP ##
###################################################
engine = create_engine('postgres://.........')
Base.metadata.create_all(engine)
Session = sessionmaker(bind=engine)
session = Session()
session.add(FinalData) # I'M ASSUMING I NEED TO ITERATE OVER THIS #
我确定我遗漏了一些简单的东西,但是如何将 FinalData 字典的所有内容传递到 SQLAlchemy add 语句?
【问题讨论】:
标签: python postgresql dictionary sqlalchemy