【发布时间】:2016-09-09 06:04:35
【问题描述】:
我有一个 dict 对象列表
data = [
{'id': 1, 'dt':'2002-01-02' },
{'id': 2, 'dt':'2014-01-15' },
{'id': 3, 'dt':'2005-10-20' }
]
以及使用 sqlalchemy 创建的 sqlite 中的表,如下所示
engine = create_engine(config.SQLALCHEMY_DATABASE_URI)
metadata = MetaData()
tbl1 = Table('t1', metadata,
Column('the_id', Integer, primary_key=True),
Column('the_dt', Date))
metadata.create_all(bind=engine)
stmt_insert = tbl1.insert().values(the_id=bindparam('id'), the_dt=bindparam('dt', type_=Date)
with engine.connect() as conn:
conn.execute(stmt_insert, data)
这给了我以下错误:
sqlalchemy.exc.StatementError: (builtins.TypeError) SQLite 日期类型 只接受 Python 日期对象作为输入。
我应该为“type_”参数分配什么来使这个绑定起作用?
【问题讨论】:
-
在 sqlalchemy 中你可以使用 func。示例 - func.DATE(您的日期值作为字符串)
标签: python sqlite sqlalchemy