为什么人们使用sqlalchemy CORE来保存数据并使用sqlalchemy ORM来查询数据

She*_*ang 3 python orm sqlalchemy

我发现有些人使用sqlalchemy ORM来查询数据,但是使用sqlalchemy CORE来插入数据.为什么他们这样做?为什么他们不在一个Python代码(类)中保持一致?

Sqlalchemy ORM最终将转换为CORE,对吧?同时使用核心和orm,是否使程序更快?我在这里找到了一句话(sqlalchemy core和ORM有什么区别?)

特别是基于仅在运行时可用的信息

这是否意味着CORE更快还是什么?我真的很困惑.任何人都可以提前帮助,谢谢.

Ilj*_*ilä 9

您应该查看文档中的性能比较和解释.基本上它解释了ORM如何以及为什么不适合Core可能处理的大型批量插件.会议中也有批量操作,但他们有权衡.

虽然ORM确实构建在Core之上,但它不仅仅是简单的"将这些对象保存到数据库".它跟踪会话中对象的更改,并定期将这些挂起的更改刷新到DB.这是工作单元模式的一部分.所有这些书籍都需要付出代价,但作为回报,在将复杂对象图持久存入关系数据库时,您不必担心操作顺序.有时您不需要所有这些并且只想将一堆行插入到数据库中.