[SQL] Tabelle beim füllen mit DATETIME automatisch versehen

Dieses Thema im Forum "Webentwicklung" wurde erstellt von Buzzer, 11. April 2012 .

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 11. April 2012
    Tabelle beim füllen mit DATETIME automatisch versehen

    Hi,

    kann mir vll. jemand kurz helfen?

    Ich möchte in mySQL eine Tabelle erstellen. Diese soll später über ein Formular gefüllt werden, d.h. der User gibt die Werte für P1, P2 und P3 in ein Formular ein, 1-2x täglich.

    Damit die Werte später richtig ausgewertet werden können soll bei jedem Eintrag noch das aktuelle Datum und die Uhrzeit des Eintrages hinterlegt werden.

    Bisher sieht der Code zur Erstellung der Tabelle wie folgt aus:
    Code:
    CREATE TABLE `tablename` (
    `id` SMALLINT UNSIGNED NOT NULL AUTO_INCREMENT,
    `P1` DEC(4,3) NOT NULL,
    `P2` DEC(4,3) NOT NULL,
    `P3` DEC(4,3) NOT NULL,
    PRIMARY KEY (`id`),
    );
    Ich dachte jetzt an so etwas wie:
    Code:
    CREATE TABLE `tablename` (
    `id` SMALLINT UNSIGNED NOT NULL AUTO_INCREMENT,
    `date` DATETIME NOT NULL AUTO_INCREMENT,
    `P1` DEC(4,3) NOT NULL,
    `P2` DEC(4,3) NOT NULL,
    `P3` DEC(4,3) NOT NULL,
    PRIMARY KEY (`id`),
    );
    Bin mir aber fast sicher das es so nicht stimmt.
     
  2. 11. April 2012
    AW: Tabelle beim füllen mit DATETIME automatisch versehen

    schau dich hier mal um: MySQL :: MySQL 5.0 Reference Manual :: 11.3.5 Automatic Initialization and Updating for TIMESTAMP
     
  3. 11. April 2012
    AW: Tabelle beim füllen mit DATETIME automatisch versehen

    Hi,

    probiers mal damit:

    Code:
    CREATE TABLE `tablename` (
    `id` SMALLINT UNSIGNED NOT NULL AUTO_INCREMENT,
    `date` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    `P1` DEC(4,3) NOT NULL,
    `P2` DEC(4,3) NOT NULL,
    `P3` DEC(4,3) NOT NULL,
    PRIMARY KEY (`id`),
    );
    
    wenn es zusätzlich noch bei jedem update aktualisiert werden soll dann so:

    Code:
    CREATE TABLE `tablename` (
    `id` SMALLINT UNSIGNED NOT NULL AUTO_INCREMENT,
    `date` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    `P1` DEC(4,3) NOT NULL,
    `P2` DEC(4,3) NOT NULL,
    `P3` DEC(4,3) NOT NULL,
    PRIMARY KEY (`id`),
    );
    
    den Timestamp kannst du dann ja in das gewünschte Anzeigeformat konvertieren.

    Viele Grüße
    Duffi
     
  4. 11. April 2012
    AW: Tabelle beim füllen mit DATETIME automatisch versehen

    Also wenn ich das richtig verstehe, wird bei jeder neuen Zeile die durch das Formular in mySQL angelegt wird das aktuelle Datum eingetragen.

    Ich möchte das sich das Datum nicht aktualisiert.

    Danke ~closed~
     
  5. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.