alle einträge ändern

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

  • alle einträge ändern

    hallo!
    ich habe eine termin-datenbank übernommen in der der tag, monat, jahr, stunde und minute des events einzeln in einer spalte abgespeichert wird!
    da ich das nicht ganz schön finde, habe ich eine weitere spalte angebracht in der der timestamp des events reingeschrieben wird (z.b. 200412292315 - also jahrmonattagstundeminute)!
    das klappt auch wenn ich neue termine anlege, aber wie krieg ich die ganzen alten termine in die spalte timestamp geparst ohne das ich jedes einzeln bearbeiten muss?
    danke sven

  • #2
    UPDATE tabelle SET neuespalte CONCAT(jahr,monat,tag,stunde,minute,'00') WHERE neuespalte IS NULL;
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      Wichtig ist dabei, dass die einzelnen Felder mit der richtigen Anzahl von Stellen und als "unsigned zerofill" formatiert sind.

      Zu beachten: der Timestamp wird nämlich automatisch aktualisiert, wenn du ein Feld eines Datensatzes änderst. Willst du das nicht, musst du entweder bei jedem UPDATE den alten Wert des Timestamp-Feldes mit in die Query nehmen oder mit dem Typ DATETIME arbeiten.
      mein Sport: mein Frühstück: meine Arbeit:

      Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

      Kommentar


      • #4
        da tut sich irgenwie gar nix
        ich mal das ganze mal auf:
        tabellenaufbau (ausschnitt):
        day # month # year # hour # minute # stamp
        ##############################
        12 # 04 # 2004 # 12 # 15 #


        so, und jetzt lass ich das script laufen:
        PHP-Code:
        include("../config.php");
        $table "events";

        $sqlupdate "UPDATE $table SET stamp CONCAT(year,month,day,hour,minute,'00') WHERE stamp IS NULL"
        und, was mach ich falsch?! vielen dank

        Kommentar


        • #5
          deine spaltennamen sind reservierte wörter. mache mal ` drum oder nenne die fehler mal lieber um..

          auch sind grundsätzlich fehlermeldungen nicht schlecht...
          INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


          Kommentar


          • #6
            hmm,

            btw: einmal-und-nie-wieder-queries lassen sich per php_your_admin viel effektiver und einfacher umsetzen.
            Die Zeit hat ihre Kinder längst gefressen

            Kommentar


            • #7
              Möchte mich meinen beiden Vorschreibern anschließen und anmerken, daß
              PHP-Code:
              $result mysql_query($sqlupdate)
               
              __ _ _ _ _ or die("Anfrage fehlgeschlagen: " mysql_error()); 
              nicht vergessen werden sollte.

              Offe

              Kommentar

              Lädt...
              X