Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

HIlfe bei MySQL

Empfohlene Antworten

Veröffentlicht

hallo zusammen,

ich will in mysql eine datenbank mit zeitstempel anlegen, allerdings wird der zeitstempel immer auf 0000-00-00 00:00:00 gesetzt. so sieht die spaltendeffinition in etwa aus:

create table $tabelname(

kundennummer int not null default 0 auto_increment primary key,

zeitstemper datetime not null default \"0000-00-00 00:00:00\",

nachname char(50) not null default \"\"

)

ich bin für jede hilfe dankbar.

thx Hal

Hä?

Du setzt doch da den Default Wert auf 0000-....? Is doch klar dass er dann den Wert hat wenn nicht anders gesetzt.

Ausserdem gibts nen extra Datenbank Board :-/

mit default geb ich den wert an, den der datentyp auf keinen fall haben darf, aber merkwürdiger weise wird er trotzdem auf 0000-.... gesetzt und genau das versteh ich nicht!

Mit default gibt man den Wert an, der reingeschrieben wird, falls man beim Einfügen für diese Spalte nichts angibt also wo sonst null drin stehen würde.

Deswegen ist default bei ner autoincrement Spalte auch vollkommen sinnlos.

Am besten du postet mal den Programmcode, der bei dir die Daten in die Datenbank schreibt.

Gruß Jaraz

ok, zur kenntnis genommen, aber könnt ihr mir jetzt bitte sagen, warum das nicht bei datetime keine anzeige erhalte?

Original geschrieben von Jaraz

Am besten du postet mal den Programmcode, der bei dir die Daten in die Datenbank schreibt.

Meine Kristallkugel ist nämlich gerade kaputt.

Gruß Jaraz

Wenn ich mit

$sql = "insert ".$tabellenname." (nachname) values('".$name."')";

$erg = mysql_db_query($dbname, $sql, $verbindung);

Daten in die Datenbank schreib muss mit datetime(mit timestamp funktioniert es ja), wie oben beschrieben das aktuelle datum und uhrzeit in die datenbank eingefügt werden.

der fehler muss irgendwo bei

create table $tabelname(

kundennummer int not null auto_increment primary key,

zeitstemper datetime not null,

nachname char(50) not null default \"\"

)

liegen

Hal

Morgen.

1. deine Insert Anweisung entspricht nicht gerade der Norm. Wo ist das "into" ?

2. DateTime ist meines Wissens kein TimeStamp sondern nichts weiter als ein Datentyp, in dem du eine Zeit oder ein Datum manuell eingeben kannst. Wenn du den in das Feld einen TimeStamp einfügen möchtest, mach das doch über die Insert Anweisung. Denn das Datum und die Zeit hast du ja eh (now() <- SysZeit).

Für ein MySQLHandbuch schau mal unter dem Link nach.

Gruß

UBAI - Kaum macht mans richtig, schon funktionierts !

Aha der Nebel lichtet sich.

Bei timestamp fügt mysql automatisch die Funktion now() ein.

Bei datetime nicht. Du musst also so einfügen.

$sql = "insert ".$tabellenname." (nachname, zeitstempel) values('".$name."', NOW() )";

Gruß Jaraz

Nachtrag: Das nächste mal bitte direkt alle relevanten Informationen posten, dann gehts schneller.

PS: @ UBAI into ist bei mysql optional

Was auch noch gehen müßte wäre folgender Eintrag in der create Anweisung:

create .....

Zeitstempel TIMESTAMP CURRENT_TIMESTAMP ......

Das Zurückgegebene Datum/Zeit hat dann das Format: JahrMonatTag StundeMinuteSekunde

Gruß UBAI - Kaum macht mans richtig, schon funktionierts !

Vielen dank leute, ich werd das nächste mal versuchen mein problem besser zu beschreiben.

und nochmal danke für eure hilfe

Hal

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.