insert ignore

# insert ignore
insert_stmt = TimePoint.__table__.insert().prefix_with(" ignore").values(data) session.execute(insert_stmt)
# insert on duplicate update insert_stmt = mysql.insert(TaskInstance).values(**data) on_duplicate_key_stmt = insert_stmt.on_duplicate_key_update( {"start_dt": start_dt, "end_dt": end_dt}) session.execute(on_duplicate_key_stmt)

 批量操作

# insert ignore bulk
stmt = insert(t).prefix_with("IGNORE")
# INSERT IGNORE INTO t (q) VALUES (:q)
session.execute(stmt, [{ row }, { row}, {row} ...])

 

 

https://github.com/pallets/flask-sqlalchemy/issues/241

https://docs.sqlalchemy.org/en/14/changelog/migration_12.html#support-for-insert-on-duplicate-key-update

https://stackoverflow.com/questions/46654221/sqlalchemy-core-insert-ignore-and-on-duplicate-key-update

https://stackoverflow.com/questions/2218304/sqlalchemy-insert-ignore

https://stackoverflow.com/questions/39256258/how-do-i-tell-sqlalchemy-to-ignore-certain-say-null-columns-on-insert

https://github.com/sqlalchemy/sqlalchemy/issues/5374

posted on 2021-05-25 10:58  Go_Forward  阅读(1080)  评论(0编辑  收藏  举报