kostenloser Webspace werbefrei: lima-city


MySQL Auto-Increment nach löschen eines Eintrages

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    podocs07

    podocs07 hat kostenlosen Webspace.

    Hi Ihr!

    Ich habe ein kleines Problem:

    Nehmen wir an ich habe eine Bilderdatenbank (MySQL). Jedes mal, wenn ein Bild zugefügt wird, bekommt es eine eindeutige ID per Auto-Increment zugewiesen. Jetzt kann es aber auch sein, dass ich ein Bild mitten aus der Tabelle löschen möchte, zum Beipiel Bild 3 von 5 welches bisher die ID 3 hatte. Aus ganz praktischen Gründen sähe ich es nun gerne, wenn die ID\'s der nachfolgenden Bilder angepasst würden - Bild 4 hätte dann ID 3 usw. Nun zu meiner Frage:

    Wisst ihr, ob MySQL zu so etwas fähig ist? Oder gibt es vielleicht einen speziellen SQL-Befehl der eine Tabelle derart prüft und eventuell anpasst? Es ist nicht nötig, die Bilder eindeutig identifizieren zu können, nur der ID-Index sollte lückenlos durchlaufen werden können, und da finde ich es aufwändig, jedes Mal ein selbst geschriebens PHP-Script über die Datenbank rutschen lassen zu müssen, da das ja auch rechenintensiv ist.

    Gruß podocs07
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Welche praktischen Gründe wären das denn, auto_increment anzupassen? Mir fällt spontan keiner ein, es macht eigentlich keinen Sinn...
    Aber ja, es geht (bdeingt):

    ALTER TABLE `tabelle` AUTO_INCREMENT = Wert;

  4. Den Primärschlüssel benutzt man doch um einen Datensatz eindeutig zu identifizieren, wenn nun dieser Schlüssel geändert wird, stimmt die ganze zuordnung gar nicht mehr.
  5. Also ich weiß ja nicht wie du die Tabelle ausließt, aber wenn du das zB mit mysql_fetch_assoc oder so machst, dann wird damit sowieso die Tabelle Zeile für Zeile durchgegangen, da brauchst du keine ID.
    Vlt. versteh ich ja was falsch^^
  6. Autor dieses Themas

    podocs07

    podocs07 hat kostenlosen Webspace.

    Danke erstmal für eure Antworten!
    Prinzipiell geht es darum, dass ich eine Seite machen will, auf der je ein Bild dargestellt wird, mit next image / previous image links, wo man dann halt draufklicken kann und aufs nächste kommt. Wenn da jetzt aber eine Lücke in den ID\'s ist, hab ich ein Problem. Für eine eindeutige Identifizierung der Bilder würde ich natürlich eine andere, eindeutige UID einführen, aber zur sequentiellen Darstellung fände ich es praktisch, einfach nur fortlaufende ID\'s zu haben. Die ID würde sich dann nämlich auch in der Seitenadresse wiederspiegeln, wodurch man wiederum die Möglichkeit hätte, an einer Stelle, an der man aufgehört hat, bilder zu betrachten, später wieder weiterzumachen (z.B. per Favorit oder man merkt sich halt die Stelle wo man grade is...). Falls man das alles viel einfacher haben kann, tuts mir leid, ich hab halt kaum Ahnung von PHP und MySQL ^^

    Danke und Gruß,
    podocs07
  7. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!