Fal*_*per 0 python sqlite sqlalchemy
我正在研究 ResultProxy 类,它似乎是该execute方法的结果。
我从一个简单的选择开始,然后对结果进行迭代。我很好奇的是更新和删除。我怎么知道删除是否成功?
在 python 中这样做时,我会有类似的东西:
result = session.execute("delete from A where id = 4")
Run Code Online (Sandbox Code Playgroud)
它运行它,但除了尝试查询 id=4 的存在之外,我不知道它是否成功。
当我查看 ResultProxy 类时,我没有看到任何与我相关的内容isSuccessful或任何其他跳出给我的关键字。
就像我说的,通常,我只是遍历选择集,但无法弄清楚这一点。
你可以看看rowcount属性:
if result.rowcount > 0:
print("deleted something")
else:
print("nothing deleted")
Run Code Online (Sandbox Code Playgroud)
请注意,此属性的准确性取决于数据库和您的查询。对于 SQLite 特别是简单的DELETE FROM foo WHERE bar = :baz查询,它应该可以工作。
| 归档时间: |
|
| 查看次数: |
1492 次 |
| 最近记录: |