【问题标题】:Why are my records not being inserted in the same order they are being executed?为什么我的记录没有按照它们执行的顺序插入?
【发布时间】:2015-10-23 21:35:40
【问题描述】:

我正在使用 Microsoft Office Access 作为我的 DBMS,并且我正在使用 VBA 为这个项目编写代码。

我正在对网站上的项目进行数据抓取,在将数据插入表格后,我遇到了一些奇怪的事情。

在我的代码中,我使用循环来遍历并收集网站必须提供的所有项目。一旦我获得了一个项目的所有数据,我将它插入到我的表中,然后继续下一个。我需要将 14,724 个项目插入到我的表中。如果我遍历所有这些,它们将被添加到表中,但是一旦我在表中查看它们,它们就会出现故障,即使所有项目都在那里,但是如果我将循环调整为只收集......假设只有前 10 个项目,那么它们将按照收集它们的顺序出现,这与它们在网站源代码中出现的顺序相同。

请务必注意,我的表没有 id 字段,因为它不是必需的,因为还有一个其他字段可用作表中项目的唯一标识符。

这似乎不是一个大问题,但我很好奇为什么会发生这种情况。使用 MS-Access 作为 DBMS 是否有某种限制?

非常感谢任何见解。

谢谢。

【问题讨论】:

  • 如果您想按照最初插入的顺序检索记录,请包含一个存储其插入顺序的字段。
  • ^ 就像自动编号列一样,您可以稍后进行排序。

标签: ms-access vba records


【解决方案1】:

表格不是电子表格。

这是任何关系数据库引擎的设计。表中的记录除了您最终分配或应用的顺序外没有其他顺序。

【讨论】:

    【解决方案2】:

    如果要对数据进行排序(升序或降序),请使用查询。该表没有任何顺序。即使是字段也没有任何相关的顺序。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-09
      相关资源
      最近更新 更多