ClientDataSet:按附加顺序存储数据
ClientDataSet: Store data in the order they are appended
看来,当我将数据附加到 TClientDataSet 时,它们并没有按我附加的顺序存储。有时是,有时不是。是否有一个选项可以让数据以相同的顺序排列,例如从文件或数据库中读取它们?
我想避免创建单独的列来存储位置并在其上设置索引。
对于数据库,这包括 TClientDataset,您永远不能假设数据会按照您放入它们的顺序或任何特定顺序从数据库中出来。
如果顺序很重要,请使用另一列来存储插入顺序,或从另一列推导出顺序。
发生这种情况的原因之一是,当删除一行时,数据库不会 "bunch" 增加其他行来填补空白,而是在添加新记录时重新使用空白已添加。
有一个可以与 TClientDataset 一起使用的 ftAutoInc 字段类型,因此没有太多工作要做来管理新列。
看来,当我将数据附加到 TClientDataSet 时,它们并没有按我附加的顺序存储。有时是,有时不是。是否有一个选项可以让数据以相同的顺序排列,例如从文件或数据库中读取它们?
我想避免创建单独的列来存储位置并在其上设置索引。
对于数据库,这包括 TClientDataset,您永远不能假设数据会按照您放入它们的顺序或任何特定顺序从数据库中出来。
如果顺序很重要,请使用另一列来存储插入顺序,或从另一列推导出顺序。
发生这种情况的原因之一是,当删除一行时,数据库不会 "bunch" 增加其他行来填补空白,而是在添加新记录时重新使用空白已添加。
有一个可以与 TClientDataset 一起使用的 ftAutoInc 字段类型,因此没有太多工作要做来管理新列。