gpt4 book ai didi

mysql - SqlAlchemy 使用 ORM 截断表

转载 作者:可可西里 更新时间:2023-11-01 06:34:02 24 4
gpt4 key购买 nike

我一直在为我的应用程序使用orm,并尽量不使用sql以避免在不同dbms之间切换时出现sql语法错误。

目前我正在使用 sqlite 和 mysql 进行测试。我想删除我们可以使用的表:

db.session.query(models.MyTable).delete()

不幸的是,这个方法并没有真正“截断”表,因为它没有将自动增量的计数重置为 0。

在 SqlAlchemy orm 中是否有真正的截断?

最佳答案

SQLAlchemy delete(...) 方法被翻译成 SQL DELETE FROM 查询。此查询不会重置任何 AUTO_INCREMENT 计数器。要在 MySQL 中重置计数器,您必须运行这样的查询:

ALTER TABLE tbl AUTO_INCREMENT = 100;

如果我没记错的话,它在 SQLAlchemy 中没有类似物。

关于mysql - SqlAlchemy 使用 ORM 截断表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13608116/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com