我没有使用ORM,而是在没有ORM(SQLObject/SQLAlchemy)的Python和MySQL中考虑以下方法.我想得到一些关于这似乎是否可能产生任何负面长期后果的反馈,因为从短期来看,从我所知道的情况来看似乎很好.
而不是将数据库中的行转换为对象:
每个表由一个类表示
将行检索为dict
表示游标的对象提供对表的访问,如下所示:
cursor.mytable.get_by_ids(低,高)
删除意味着将time_of_removal设置为当前时间
因此,基本上这消除了对ORM的需要,因为每个表都有一个类来表示它,并且在该类中,单独的dict表示每一行.
类型映射是微不足道的,因为每个dict(行)是python/blub中的第一个类对象,允许您知道对象的类,此外,Python中的低级数据库库处理字段级别的类型转换为他们适当的应用程序级类型.
如果你发现沿着这条路走下去的任何潜在问题,请告诉我.谢谢.
这并没有消除对ORM的需求.这是一个ORM.在哪种情况下,为什么重新发明轮子?
您是否有令人信服的理由避免使用已建立的ORM?