Falsche Sortierung der Datensätze?

11/04/2008 - 12:03 von Susann Markward | Report spam
Hallo,

X-Post mit fup2 -> microsoft.public.de.vb.datenbank

Da es sowohl um eine Access-Frage geht, als auch um das Programmieren
mit VB6 habe ich ausnahmsweise mal ein X-Post nach m.p.d.access und
m.p.d.v.datenbank gemacht.

Ich habe in eine Access-DB Datensàtze mit einem selbst geschriebenen
VB6-Programm eingefügt. Und eigentlich sollten die neu eingefügten
Datensàtze am Ende der Tabelle stehen.

Dazu mache ich zuerst einen MoveLast- und anschließend einen AddNew-Befehl.

Öffne ich jedoch mit MS Access (2003 SP3) in der Tabellen-Ansicht die
entsprechende Tabelle, sehe ich meinen Datensatz mitten drin stehen.

Benutze ich ein anderes Tool für die Anzeige der Tabellen (DataBase
Tour) sehe ich meine neu hinzugefügten Datensàtze an der Stelle, wo ich
sie erwartet hàtte.

Ist ein derartiger Bug von Access hier bekannt oder làuft mein Programm
falsch?

MfG
Susann

PS: Eigentlich möchte ich nur wissen, ob mein selbst geschriebenes
Programm richtig funktioniert und die neu hinzuzufügenden Datensàtze ans
Ende der Tabelle einfügt.
 

Lesen sie die antworten

#1 Peter Götz
11/04/2008 - 12:30 | Warnen spam
Hallo Susann,

Ich habe in eine Access-DB Datensàtze mit einem
selbst geschriebenen VB6-Programm eingefügt.
Und eigentlich sollten die neu eingefügten
Datensàtze am Ende der Tabelle stehen.



Wie kommst Du auf diese Aussage?

Dazu mache ich zuerst einen MoveLast- und
anschließend einen AddNew-Befehl.



Das MoveLast kannst Du Dir schenken.
Damit bewegst Du ja nur den akt. Datensatzzeiger
in (D)einem Recordset auf den letzten Datensatz.
Das hat aber überhaupt nichts damit zu tun, an
welcher Stelle ein spàter neu einzufügender
Datensatz in irgendeiner DB-Tabelle steht.


Öffne ich jedoch mit MS Access (2003 SP3) in der
Tabellen-Ansicht die entsprechende Tabelle,
sehe ich meinen Datensatz mitten drin stehen.

Benutze ich ein anderes Tool für die Anzeige der
Tabellen (DataBase Tour) sehe ich meine neu
hinzugefügten Datensàtze an der Stelle, wo ich
sie erwartet hàtte.

Ist ein derartiger Bug von Access hier bekannt
oder làuft mein Programm falsch?



Das ist weder ein Bug von Access, noch làuft Dein
Programm falsch.

Angenommen, Du hast eine Tabelle mit div. Feldern.
Eines davon ist das Feld "ID".
Du kannst nun die Tabelle mit

Select * From Tabelle

auslesen und erhàltst dann alle Datensàtze in einer
unbestimmten Reihenfolge.
Du kannst die selbe Tabelle aber auch so auslesen:

Select * From Tabelle Order By ID

und enthàltst dann alle Datensàtze aus Tabelle,
aber diesmal sortiert nach den Inhalten des
Feldes ID.


MfG
Susann

PS: Eigentlich möchte ich nur wissen, ob mein selbst
geschriebenes Programm richtig funktioniert und die
neu hinzuzufügenden Datensàtze ans Ende der Tabelle
einfügt.



Ein "Ende einer Tabelle", so wie Du es offenbar erwartest
gibt es nicht. Wenn Du mehrere Datensàtze aus einer
Tabelle in einer bestimmten Reihenfolge (Sortierung) haben
willst, dann musst Dein Select-Statement eben eine
entsprechende OrderBy-Klausel haben.

Gruß aus St.Georgen
Peter Götz
www.gssg.de (mit VB-Tipps u. Beispielprogrammen)

Ähnliche fragen