Ankündigung

Einklappen
Keine Ankündigung bisher.

MySQL Fehler in Version 4.0.15

Einklappen

Neue Werbung 2019

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

  • MySQL Fehler in Version 4.0.15

    Hallo Forum!

    Mir ist bei meiner Datenbank was aufgefallen, was ich nicht ganz verstehe.

    Ich habe zuerst einen alten Bestand von Daten absteigend (I-1200 bis I-0800)
    eingegeben. Bis dahin verlief alles so wie es sollte.

    Als ich damit fertig war, waren die neuen Datensätze dran (I-1230 bis I-1201).
    Ich habe dann versucht aufsteigend die Daten einzugeben.
    Soweit, so gut.

    Bei den ersten Datensatz ist allerdings bereits was merkwürdiges passiert.
    Bei dere Eingabe des Datensatzes I-1201 sind die Bildlinks des Datensatzes
    I-1193 überschrieben worden, so das beide Datensätze die gleichen Bilder
    angezeigt haben.

    Das Formular übergibt den Bildlink nach folgenden Schema:
    <img border=0 src=upload/I-XXXX-1.jpg>


    Überall wo XXXX steht, wird die ID, z.B. 1201 eingegeben.

    Da ich den Vorgang auch mit den Datensatz I-1202 wiederholt habe, konnte
    ich feststellen, das bei der aufsteigenden Eingabe immer die Bildverweise
    8 Datensätze abwärts überschrieben werden.

    Danach habe ich einfach die nächsten Datensätze 10 IDs höher gesetzt und
    wieder abwärts eingegeben (aus I-1230 wurde also I-1240 usw.).
    Das klappte soweit, ist aber keine richtige Lösung.

    Ist das ganze jetzt ein MySQL-Fehler der Version 4.0.15 oder liegt der Fehler
    wo anders?

    Hat jemand eine Idee?

    maccoder


  • #2
    Zuallererst

    http://www.lugbz.org/documents/smart...l#dontclaimbug







    Ich habe ehrlich gesagt nicht verstanden was du machst bzw. machen willst, da du deine Tabellen-Struktur nicht mitgeliefert hast. Ich würde allerdings eher vermuten, dein PrimaryKey mit dem auto_increment hat die richtige Zuordnung zum Bild verloren, weil z.B. Einträge fehlen (vielleicht genau 8?).

    Kommentar


    • #3
      Hallo Forum!

      Hier die Struktur der Tabelle:

      name varchar(100) Nein
      geburtsjahr varchar(100) Nein
      yearOfBirth varchar(100) Nein
      groesse varchar(100) Nein
      height varchar(100) Nein
      gewicht varchar(100) Nein
      weight varchar(100) Nein
      augenfarbe varchar(100) Nein
      eyeColour varchar(100) Nein
      haarfarbe varchar(100) Nein
      hairColour varchar(100) Nein
      familienstand varchar(100) Nein
      marriageStatus varchar(100) Nein
      kinder varchar(100) Nein
      children varchar(100) Nein
      ausbildung varchar(100) Nein
      education varchar(100) Nein
      beschaeftigung varchar(100) Nein
      occupation varchar(100) Nein
      fremdsprachen varchar(100) Nein
      foreignLanguages varchar(100) Nein
      mehrUeberMich text Nein
      moreAboutMyself text Nein
      bild1 varchar(100) Nein
      bild2 varchar(100) Nein
      bild3 varchar(100) Nein
      bild4 varchar(100) Nein
      bild5 varchar(100) Nein
      bild6 varchar(100) Nein
      vorschaubild varchar(100) Nein
      aktiv varchar(100) Ja NULL
      internId varchar(100) Nein
      agenturId varchar(100) Ja NULL
      hobbys varchar(200) Ja NULL
      hobbies varchar(200) Ja NULL
      link1de varchar(200) Ja NULL
      link1en varchar(200) Ja NULL
      link2de varchar(200) Ja NULL
      link2en varchar(200) Ja NULL
      link3de varchar(200) Ja NULL
      link3en varchar(200) Ja NULL


      Name Typ Kardinalität Aktion Feld
      PRIMARY PRIMARY 401 internId


      maccoder

      Kommentar


      • #4
        Und über welches Feld greifst du auf die Bilder zu? internId?

        Kommentar


        • #5
          Als Tipp

          Du solltest dringends deine Tabellenstruktur überdenken.

          Kommentar


          • #6
            Stimmt

            Code:
            familienstand varchar(100) Nein
            marriageStatus varchar(100) Nein 
            //
            internId varchar(100) Nein
            Was zum Teufel soll das??? Weißt du wie groß eine 100-stellige Zahl ist? Soviel Atome gibts nichtmal in unserer Galaxis...

            Kommentar


            • #7
              Hallo Forum!

              Ich greife über:

              bild1 varchar(100) Nein
              bild2 varchar(100) Nein
              bild3 varchar(100) Nein
              bild4 varchar(100) Nein
              bild5 varchar(100) Nein
              bild6 varchar(100) Nein
              vorschaubild varchar(100) Nein

              auf die Bilderlinks zu.

              Diese sind wie bereits erwähnt so angelegt:

              <img border=0 src=upload/I-XXXX-1.jpg>


              wobei die XXXX durch die ID, z.B. (I-)1201 ersetzt werden.

              PHP-Code:
              <?php
              familienstand varchar
              (100Nein
              marriageStatus varchar
              (100Nein
              //
              internId varchar(100Nein

              ?>
              Klar sind das etwas übertrieben, aber bei meinen Webspace spielt
              das keine große Rolle.

              maccoder

              Kommentar


              • #8
                Zitat von maccoder
                Klar sind das etwas übertrieben, aber bei meinen Webspace spielt
                das keine große Rolle.

                maccoder
                Ein sauberes Tabellendesign ist absolut unabhängig vom Webspace.

                Kommentar


                • #9
                  Hallo Forum!

                  Das Tabellendesign ist nicht das Thema, daran liegt es bestimmt nicht.

                  Die Frage ist und bleibt, wieso die Eingabe, wenn diese aufwärts eingegeben wird, 8 Datensätze
                  abwärts die Bilderlinks überschreibt.
                  Und wieso dies nicht passiert, wenn die Eingabe abwärts erfolgt.

                  maccoder

                  Kommentar


                  • #10
                    Ehrlich gesagt, verstehe ich nicht, was du mit aufwärts bzw. abwärts eingeben meinst und was da wie überschrieben werden soll.

                    Kommentar


                    • #11
                      Hallo Forum!

                      Hier nochmal das Problem:

                      Bei dere Eingabe des Datensatzes I-1201 sind die Bildlinks des Datensatzes
                      I-1193 überschrieben worden, so das beide Datensätze die gleichen Bilder
                      angezeigt haben.

                      Bei der Eingabe des Datensatzes (aufwärst) ist sind z.B. die (ausschließlich und nur!!)
                      Bildlinks des bereits vorhandenen Datensatzes I-1194 überschrieben worden.

                      Als ich den alten Bestand abwärts (zuerst I-1200, dann I-1199, dann I-1198 usw.)
                      eingeben habe, ging alles gut.

                      Ich hoffe, das damit die Begriffe "aufwärts bzw. abwärts" geklärt sind.

                      maccoder

                      Kommentar


                      • #12
                        Und zum Eintragen der Daten hast du INSERT verwendet?

                        Kommentar


                        • #13
                          Hallo Forum!

                          Ja.

                          $anfrage="INSERT INTO dream SET

                          danach folgen sämtliche Variablen wie bild1='$bild1', usw.

                          maccoder

                          Kommentar


                          • #14
                            Es interessiert doch nicht die Bohne wie die Datensätze sortiert sind, wenn du eindeutige INSERT-Anweisungen verwendest!? Und bei INSERT wird nichts überschrieben, sondern neu hinzugefügt. Wenn deine I-1234 Felder eindeutig sein sollen, deklarier sie als UNIQUE.

                            Kommentar


                            • #15
                              Wenn du wirklich nur diese INSERT- und keine zusätzliche UPDATE-Abfrage benutzt, sehe ich keinen Grund, warum dir die Daten teilweise überschrieben werden sollten.

                              Kommentar

                              Lädt...
                              X