vba - 访问 VBA TransferText 输出记录乱序
问题描述
我有一个 MS Access 应用程序,它连接来自多个源和一个表单的数据,从中构建一个表,然后将表逐行导出到一个文本文件,然后将其重命名以将扩展名.txt
从.ipj
. 这样做的目的是创建一个由我们的统计过程控制程序读取的文本文件。
这工作了几个月,但大约 3 周前突然开始打乱输出文件的顺序。源表和查询的顺序是我想要的,但输出看起来不像源表或查询。
我已经尝试了该方法并将表加载到记录集中并使用循环DoCmd.Transfertext
将其逐行打印到文件中。Do While Not rst.EOF
两次我都遇到同样的问题:在不应该出现的地方出现线条。
我正在运行 MS Access 365,它是最新的更新。
有什么建议可以调试这个问题吗?
解决方案
MS Access 使用无序数据集:也就是说,除非通过order by
查询中的子句定义显式排序,否则您不能依赖任何 MS Access 查询或方法处理或输出记录的顺序。
因此,为了保证一致的输出,您应该使用指定排序顺序的已保存查询或通过配备order by
子句的 SQL 语句从表中获取记录的记录集,按字段之一对数据集进行排序。
推荐阅读
- c# - WPF IdentityServer4 客户端的无效授权类型:authorization_code
- typescript - 如何在本机反应中导航到另一个屏幕?
- azure-machine-learning-service - 如何使用计算目标获取现有 AKS
- javascript - 返回数据数组结果为空但控制台日志返回数据
- mysql - 在mysql中显示空白表
- angular - 一个一个地删除动态创建的组件?
- c# - 添加复合键后重复键值违反唯一约束“PK_ProductsComparsion
- r - 具有反应性的简单 R 传单地图 - 不工作 - 尝试了一切
- jpa - 如何使用 Spring Data JPA 创建全文索引?
- android - 退出地图导航并单击恢复 Xamarin Forms Android 应用程序