使用SQLAlchemy成功连接到sqlserverdb后只返回两行

2024-05-15 14:28:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用Flask和SQLAlchemy连接并使用mssqlserver数据库,如下所示:How to build a flask application around an already existing database?

我已经成功地使用声明性基创建了模型,并使用了SQLAlchemy:

db = SQLAlchemy(app)
db.Model.metadata.reflect(bind=db.engine)

class Orders(db.Model):
    __table__ = db.Model.metadata.tables['orders']

    def __repr__(self):
        return '<Order %r>' % self.OrderID

models.Orders().query.all()   // returns [<Order 240579>, <Order 240580>]

result = db.session.execute(  // returns the same two rows
   'Select top 3 [OrderID] FROM [orders]'
) 

然而,问题是它只返回两行(orderids240579和240580),即使表中包含大量的订单。你知道吗

这些顺序来自表的中间(即,有些orderid的值小于240579),尽管它们是连续的行。你知道吗

如上所示,即使我执行一个原始SQL查询,告诉它返回前三个,也只返回相同的两个。你知道吗

我是SQLAlchemy的新手-我应该如何开始调试这个问题?你知道吗


Tags: toself数据库flaskdbmodelsqlalchemyorder