无法从 sqlalchemy 插入到 mysql
Posted
技术标签:
【中文标题】无法从 sqlalchemy 插入到 mysql【英文标题】:Unable to insert from sqlalchemy to mysql 【发布时间】:2018-01-03 23:14:17 【问题描述】:我正在尝试使用 sql alchemy 在 mysql db 的表中插入一行,但是当我插入并转到数据库检查数据时,我什么也看不到。
这是我的代码:
从 sqlalchemy 导入 create_engine 从 sqlalchemy 导入表,元数据 从 sqlalchemy.sql 导入表、列、选择、更新、插入 从 sqlalchemy.orm 导入 sessionmaker
engine = create_engine(
"mysql://user:password@host/schema")
connection = engine.connect()
metadata = MetaData(bind=engine)
prices = Table('historical_prices', metadata, autoload=True)
i = insert(prices)
i = i.values(
"date": my_date,
"instrument": msg['instrument'],
"open": msg['candles'][0]['openAsk'],
"high": msg['candles'][0]['highAsk'],
"low": msg['candles'][0]['lowAsk'],
"close": msg['candles'][0]['closeAsk'],
"volume": msg['candles'][0]['volume']
)
Session = sessionmaker(bind=engine)
session = Session()
session.execute(i)
我没有收到来自此代码的错误消息。 我该如何解决这个问题?
【问题讨论】:
我不知道是不是因为你遗漏了它,但你错过了session.commit()
。
@univerio 谢谢!这解决了这个问题。你愿意回答这个问题吗?所以我可以接受。
【参考方案1】:
由于提出正确答案的原始人尚未发布正确答案。 我将继续这样做。
我不知道是不是因为你遗漏了它,但你错过了一个
session.commit()
希望这个答案对于有同样问题的下一个人来说会更明显。
【讨论】:
以上是关于无法从 sqlalchemy 插入到 mysql的主要内容,如果未能解决你的问题,请参考以下文章
使用Flask SQLAlchemy从SQLite切换到MySQL
通过 sqlalchemy 映射类在 MySQL JSON 字段中插入键而不进行查询
如何使用 SQLAlchemy from_select 插入到选择中?