使用OLEDB Jet提供程序插入数据时,数据插入正确,但我插入的顺序不保持原样。相反,它会自动更改订单。
如何以相同的顺序插入记录?
答案 0 :(得分:3)
您不应该担心订单数据存储在表格中。 Order是表示层问题,当您需要特定订单时,请指定排序顺序(SQL中的ORDER BY)。
如果您在应用程序中使用表数据表并期望所需的排序顺序,那么您应该使用具有定义的排序顺序的表单(在表单属性或基础记录源中)或查询数据表到位表数据表。
Access还允许您在表格数据表中设置排序顺序并将其与表格一起保存,但这不可取。表数据表很方便,但除了快速和脏的数据视图外,您不应该依赖它们。
答案 1 :(得分:2)
我认为这与主键有关。 假设您的PK是基于文本的,那么MS Access将按字母顺序对其进行排序。 如果您想控制订单,请使用自动编号作为PK。
答案 2 :(得分:1)
在数据库中,如果您需要按特定顺序返回记录,则需要在读取代码中指定“ORDER BY”子句:
SELECT Field1, Field2 FROM Table ORDER BY Field1
其他任何事情都无法保证继续前进。