Delete was

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Delete was

    Hallo Leute

    also ich habe eine Tabelle z.B.
    Id
    1
    2
    3
    4

    Wie kann ich jetzt Id 2 z.B. löschen.

    wenn ich

    Delete table where Id = 2

    nehme wird der nächste Datensatz vor die 3 und 4 geschrieben also:
    1
    5
    3
    4
    was kann ich dagegen tun??

    Vielen Dank

  • #2
    wie wäre es mit einem "order by"

    php-Entwicklung | ebiz-consult.de
    PHP-Webhosting für PHP Entwickler | ebiz-webhosting.de
    die PHP Marktplatz-Software | ebiz-trader.de

    Kommentar


    • #3
      Ja das geht aber trotzdem ist ja die Datenbank noch durch einander geht das denn nicht irgendwie anders??


      Und dann noch eine andere Frage die spalte ID ist ein auto_increment. Kann ich nach dem löschen mit UPDATE die Tabelle so verändern das wieder 1, 2, 3, 4, da steht und der nächste Datensatz der hinzugefügt wird auch noch mit 5 weitergeht???

      Danke

      Kommentar


      • #4
        code404 schrieb
        ... geht aber trotzdem ist ja die Datenbank noch durch einander ...
        Die Datenbank legt das intern eben so ab.

        Eine ID ist eine eindeutige Zuordnung und keine Reihe, die immer 1erweise brav von 1 bis n geht .
        Wenn Datensätze gelöscht werden, dann passiert genau das. Und ob da nun 1, 12 oder 343 steht, spielt doch für die Zuordnung keine Rolle.

        Sag einfach was du mit der ID vorhast, vielleicht findet sich eine andere Lösung für dich.
        Immer erst mal gucken, ob Benzin im Tank ist ...

        Kommentar


        • #5
          Du kannst auch mit ALTER TABLE tabelle ORDER BY col die Tabelle einmalig sortieren.

          oder nach dem löschen eines Datensatzes ein OPTIMIZE TABLE tabelle durchführen.

          Allerdings ist das ... wie in etwas freundlicherer Art von mkJack erwähnt ... Deppen-SQL ... per Definition ist es vollkommen irrelevant in welcher Reihenfolge Daten in der Datenbank abgelegt wurden ... die Reihenfolge der Datensätze wie auch die Menge und Reihenfolge der Attribute ist einzig und alleine von der Abfrage abhängig ... soll heißen wird durch die Abfrage definiert.

          Die Datenbank verwendet beim ORDER BY den entsprechenden Hash Index ... und zwar unabhängig davon ob Du die Tabelle vorher sortiert hast oder nicht!

          Letztlich ist dieses Vorgehen in Bezug auf die Gesamtoperationen und damit Belastung des Server durchaus weitaus optimaler.

          Man sollte sich wenn man ein Werkzeug wie SQL verwendet einfach mal an seine Regeln halten ... damit macht man sich das Leben leichter.
          carpe noctem

          [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
          [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

          Kommentar


          • #6
            He goth

            Vielen Dank

            Ich arbeite zum ersten mal mit Datenbanken und habe deswegen noch nicht den Durchblick! Aber trotzdem noch mal danke an alle.

            Kommentar


            • #7
              Dann sag doch, was du mit der ID vorhast oder hat dich nur rein optisch gestört, daß die IDs so "durcheinander" in der DB stehen?
              Immer erst mal gucken, ob Benzin im Tank ist ...

              Kommentar


              • #8
                Original geschrieben von code404
                He goth

                Vielen Dank

                Ich arbeite zum ersten mal mit Datenbanken und habe deswegen noch nicht den Durchblick! Aber trotzdem noch mal danke an alle.
                Und weil ich das auf den ersten Blick erkannt habe, habe ich Dir das erklärt ...
                carpe noctem

                [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
                [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

                Kommentar

                Lädt...
                X