我正在使用MS-Access
,我只是想从中检索数据。
很好,安静工作得很好,现在我需要database
根据首先插入的数据来检索数据。
例如
上图中是我的MS-Access
数据库。
如果我检索数据并通过List
包正常打印它会显示如下图的输出
顺序变了...
它是如何发生的,我没有使用任何where
函数和所有......那么为什么行的顺序会改变......同时检索......!!
任何建议将不胜感激..
在将数据保存到数据库时,不能保证数据按插入的顺序排序。因此,在检索它时,不能保证可以在插入的订单上检索它。
为此,您可以拥有一个顺序主键或拥有一个带有时间戳的字段。
检索时,您可以将任一字段用作条件子句和 order by 子句,以按所需顺序检索行。
编辑:我相信已经提供了答案。重申答案
方案一:在插入数据的同时,在表中添加一个顺序主键列,该列会自增1。可以通过在where子句中指定顺序主键来获取数据。
解决方案 2:在添加数据时将 Datetime 类型的列添加到表中,插入时间的时间戳将插入列中(如果您编写了触发器或 getdate() 作为默认值),同时检索使用 order by 子句在时间戳上
随时检索具有相同输出顺序的排序数据的唯一方法是使用ORDER BY
子句
不保证从数据库中检索按插入顺序进行,要按插入顺序检索记录,您可能必须在插入记录时保存时间戳,并在检索时按时间戳列排序
如果您确定该Id
列会自动递增,只需添加到用于检索数据的查询中ORDER BY Id ASC
。