snopsy Geschrieben 2. Dezember 2002 Teilen Geschrieben 2. Dezember 2002 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 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Doham Geschrieben 2. Dezember 2002 Teilen Geschrieben 2. Dezember 2002 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 € Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Jaraz Geschrieben 2. Dezember 2002 Teilen Geschrieben 2. Dezember 2002 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. 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 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
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.