# RecordStore >Fragen zu deleteRecord ?



## ByteRider (31. Jul 2005)

Hallo,

ich habe eine Frage zu den ID´s in einem Record store !

Dies sind doch die Positionen der einzelenen Einträge oder ?

ID  Eintrag
1     A
2     ABA
3     Hallo
4     Blabla


Wenn ich nun mit deleteRecord(3) den Eintrag "Hallo" entferne, rutschen die Anderen einen hoch, oder ?

ID  Eintrag
1     A
2     ABA
3     Blabla

ODER ????????????????

Bei mir funktioniert das alles irgendwie nicht, ich zerschieße mir da das RecordStore mit !!!
Danach sind keine Operationen mehr möglich !!!

Wenn ich zwei Einträge unmittelbar hintereinander lösche, fange ich mit dem letzten an, damit die ID´s stimmen!




Gruß

Byte


----------



## server007 (19. Nov 2006)

nicht ganz.
der RecordStore organisiert die Daten anders.
Beispiel:
Du fügst dem RecordStore 700 daten zu (position des letzten wird dann 699 sein) und löscht dann die einträge von 3-700.
wie du meinst ist dann die nächste freie position zum einfügen die 4, dies ist aber nicht so. es ist die 701, da dies eine fortlaufende zahl ist.
am besten ist, du nimmt die klasse RecordEnumeration und machst einfach


```
RecordStore rs = RecordStore.openRecordStore("database", true);
RecordEnumeration recEnum = rs.enumerateRecords(RecordFilter filter, RecordComparator comparator, boolean keepUpdated);
```
fallst keinen filter brauchst --> null einsetzen. das gleiche gilt beim comparator. den keepUpdated boolean einfach auf true setzen.

auf die ID zugreifen ist auch ganz einfach:

```
recEnum.nextRecordId();
```
und mit dieser kannst du dann einzelne records löschen.


----------



## Guest (16. Feb 2007)

server007 hat gesagt.:
			
		

> nicht ganz.
> der RecordStore organisiert die Daten anders.
> Beispiel:
> Du fügst dem RecordStore 700 daten zu (position des letzten wird dann 699 sein) und löscht dann die einträge von 3-700.
> ...


----------

