Zum Inhalt springen

automatische ID -> später Wert ändern


Empfohlene Beiträge

Hi,

ich habe mir eine kleine Bildergallerie programmiert. Über eine Oberfläche kann ich Bilder hinzufügen und löschen. wenn ich bei der anzeige auf ein Bild klicke, geht ein Pop-Up-Fenster auf. In diesem Kann vor und zurück navigiert werden. dieses läuft über die anzahl der Datensätze, die anzeige über die id. Die ID wird bei eintragen eines Datensatzes automatisch reingeschrieben.

Wenn ich nun einen Datensatz lösche, fehlt mir zwischendrin eine id. also z.B. sind die id's 1,2,3,5,6 in der Datenbank vorhanden.

Ist es möglich, dass ich bei dem Löschvorgang die ids neu verteile??? Also nicht mehr 1,2,3,5,6 sondern 1,2,3,4,5.

Wie kann ich das machen???

Danke & Gruß Snopsy

Link zu diesem Kommentar
Auf anderen Seiten teilen

Wenn ich dich richtig verstehe, nutzt Du die ID als Primärschlüssel für deine Datenbank. Primärschlüssel müssen aber eindeutig sein. Deshalb sollte man IMHO nicht daran herumfummeln. Evtl. solltest Du dein Design überdenken und vielleicht eine Prüffunktion einbauen, die die verfügbarkeit der Bilder via Statusfeld o. Existenz der Datensätze prüft.

ODER:

Du sortierst deine DB-Inhalte neu, indem Du wenn Du z.B. den Satz Nr. 4 löscht, alle nachfolgenden Sätze n-1 verschiebst, also der Inhalt (u.a. der Pfad des Bildes) von 5 wandert nach 4 und so weiter - bis zum Ende.

Dann ist am Ende ein leerer Datensatz, den Du beim nächsten Einfügen eines Bildes füllst oder auch löschen kannst, ohne den Primärkey zu verändern.

just my 0.02 €

Link zu diesem Kommentar
Auf anderen Seiten teilen

Originally posted by snopsy

Ist es möglich, dass ich bei dem Löschvorgang die ids neu verteile??? Also nicht mehr 1,2,3,5,6 sondern 1,2,3,4,5.

Ohne zu wissen, welche Datenbank du hast, schonmal nicht.

Originally posted by snopsy

Wie kann ich das machen???

Am besten gar nicht.

Ich zitiere mich mal selber. :D

Weil das kein Zaehler ist, sondern ein Wert zur eindeutigen Identifizierung eines Datensatzes. Es kann ja sein, das du in anderen Tabellen drauf verzweigst. Wenn du dann löscht, besteht die Beziehung nicht mehr. Normalerweise sollten sowas zwar nicht passieren aber noch viel schlimmer ist es, wenn du nun die ID nochmal vergibst. Dann wird aus Babybrei auf einmal Domestos und das wollen wir doch wohl nicht.

Wenn du einen Zähler brauchst, muss du den von Hand pflegen.

Gruß Jaraz

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...