Ankündigung

Einklappen
Keine Ankündigung bisher.

NOW() ausstellen

Einklappen

Neue Werbung 2019

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

  • NOW() ausstellen

    Hallo,
    ist es möglich bei einem TIMESTAMP die NOW() Eigenschaft auszustellen?
    Ich habe hier nämlich eine Tabelle bei der das Eintragsdatum der Datensätze nicht verändert werden darf wenn der Rest des Datensatzes verändert wird. Das ist mit NOW() aber der Fall.

    Kann man das irgendwie ausstellen?

    mfg snatch

  • #2
    Hallo,

    bitte mal das SQL-Statement zur Erstellung der Datenbank und die Update-Funktionen hier posten. Ich kann das Problem nicht wirklich nachvollziehen .... vermutlich, weil ich aufs Raten angewiesen bin.

    Gruß,
    Jumepr, the II.

    Kommentar


    • #3
      Achso, ich dachte bisher das das automatisch bei TIMESTAMPS so ist.
      Ich erstelle meine DB's mit DB Designer: http://www.fabforce.net/downloads.php

      Hier der SQL Code:
      Code:
      CREATE TABLE `open_news` (
        `news_id` int(10) unsigned NOT NULL auto_increment,
        `admin_user_id` int(10) unsigned NOT NULL,
        `navi_id` int(10) unsigned NOT NULL,
        `time_date` timestamp NULL default NULL,
        `head` text collate latin1_general_ci,
        `text` text collate latin1_general_ci,
        PRIMARY KEY  (`news_id`),
        KEY `open_news_FKIndex1` (`navi_id`),
        KEY `open_news_FKIndex2` (`admin_user_id`)
      ) ENGINE=MyISAM  DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=5 ;

      Kommentar


      • #4
        Eigentlich sollte ein Update bereits existierende Werte nicht berühren. Und da du sogar NULL erlaubst, sollte er schon garnicht selbstständig da was reinpacken ^^ Aber ich lass dann doch nochma den SQL-Pros den Vortritt

        Kommentar


        • #5
          Zitat von KingCrunch
          Eigentlich sollte ein Update bereits existierende Werte nicht berühren.
          Zitat von rtfm
          A TIMESTAMP column is useful for recording the date and time of an INSERT or UPDATE operation. By default, the first TIMESTAMP column in a table is automatically set to the date and time of the most recent operation if you do not assign it a value yourself. You can also set any TIMESTAMP column to the current date and time by assigning it a NULL value. Variations on automatic initialization and update properties are described in Section 11.3.1.1, “TIMESTAMP Properties as of MySQL 4.1”.
          http://dev.mysql.com/doc/refman/5.0/...-overview.html
          http://dev.mysql.com/doc/refman/5.0/...stamp-4-1.html

          sich automatisch zu aktualisieren ist gerade die eigenschaft, wofür man TIMESTAMP braucht. das ganze abzustellen ist so ungefähr wie auto_increment einzustellen und dann doch die IDs händisch vergeben.
          wenn man das von TIMESTAMP implizierte verhalten gar nicht haben will, nimmt man halt DATETIME, DATE oder TIME, oder speichert das ganze als UNIX_TIMESTAMP in einem INT.

          Kommentar


          • #6
            Na, wieder was dazu gelernt ^^ Und gleich Fehler gefunden: Falscher Datentyp.

            sich automatisch zu aktualisieren ist gerade die eigenschaft, wofür man TIMESTAMP braucht. das ganze abzustellen ist so ungefähr wie auto_increment einzustellen und dann doch die IDs händisch vergeben.
            "händisch" ist übertrieben, schließlich gäbe es noch eine Form a la
            Code:
            timestampCol = NOW()
            (möglicherweise funktionierts nicht, aber es geht ums Prinzip )

            Kommentar


            • #7
              Genial, nun läufts. Ich danke dir.
              Das wusste ich bisher gar nicht. Aber wie KingCrunch schon sagte, man lernt nie aus.

              Kommentar

              Lädt...
              X