Jürgen Melchhammer: Die ID in der Access Datenbank

Beitrag lesen

Hallo Leute!

Die "automatischen IDs" haben allerdings, glaube ich, auch eine ganz andere Bedeutung: So etwas nennt man z.B. bei Oracle "Sequences". Diese Sequences sind extra so angelegt, daß sie bei der Nutzung "verbrennen".
Ziel: In einer Client-Server-Welt wird niemals eine Nummer zweimal vergeben, da die Datenbank die Sequenzzahl als Service anbietet, das heißt, sie kann auch steuern, daß niemals dieselbe zweimal aufgerufen wird...
So oder so: Wenn Du ein einfaches Programm mit nur einem Client hast, dann hole Dir einfach die nächste Zahl so:

SELECT MAX(idfeld)+1 AS NAECHSTE
  FROM tabelle
  ORDER BY idfeld

Das ORDER BY forciert dabei eine Indexsuche, so daß kein full-table-scan, also eine Suche über die ganze Datenbank vonnöten ist. Das hält die Geschwindigkeit erträglich.

Viel Spaß denne noch

Jürgen (der-hofft-es-war-nicht-zu-technisch)