- ベストアンサー
access2000でいつのまにかレコードの順番が変わっているんですけど、なぜでしょう?
visual basicで簡単なデータベースを利用したプログラムを作っています。 データをaccess2000で作っています。 access2000にデータをある程度打ち込んだ後、 visual basicで作ったプログラムでデータにアクセスすると データのトップの位置が変わっています。 アクセス2000で作ったデータのテーブルの中の レコードの順番は、見た目上変わってないのですが visual basicで作ったプログラムからデータにアクセスすると いつのまにか順番が変わっています。 visual basicのなかのadodc1.Recordset.Movefirstで テーブルの1番最初に行こうとすると なぜか途中のデータが1番最初と定義されています。 アクセス2000から、作ったデータのテーブルを開いて ツールバーのレコードからフィルタに行って そこからフォームフィルタをクリックすると テーブル名:フォームフィルタというフォームが表示されますよね。 そこで、表示されるフォームのIDフィールドにある 下向きの三角矢印をクリックすると 作ったデータのIDの順番が変わって表示されています。 いったい何が起こっているのでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは、 多分アクセスからテーブルを開いたときは主キーで並び変わっているのでは ないでしょうか?あるいは、VBからのアクセス時に別のキーでソートされ ているのではないでしょうか? アクセスのメニューで「ツール」-「データベースユーティリティ」-「最適化/修復」を行えば、主キーのソート順に変わると思います。
その他の回答 (1)
- ats8181oyaji
- ベストアンサー率38% (94/244)
こんにちは VBで"order by"句を使って、キーを並び順にしてしまえば よいのではないでしょうか?