Datentypen für IDs fester Länge, Zeitstempel, Auswahl und Geburtsdaten mit Unbekannten

HääWie

Benutzer
Beiträge
6
Weiß einer wie man folgende Anforderungen erfüllen kann?

- Meine IDs sollen alle 10-stellig sein

- Die Änderung an einem Datensatz soll mit einem Zeitstempel versehen werden

- Es gibt Geburtsdaten, von denen sind mir nicht immer Tag und Monat bekannt, wie kann ich sie dennoch eintragen? Geht das?

- Die „natürliche“ Haarfarbe soll möglichst einheitlich angegeben werden. Zur Auswahl stehen blond, braun, schwarz und rot. Kann man das irgendwie eingrenzen?
 
Werbung:
- Meine IDs sollen alle 10-stellig sein
Hier kannst Du INT(x) ZEROFILL verwenden. Dabei gibt x die Anzahl der dargestellten Stellen an. ZEROFILL sorgt dafür, dass die vorderen Stellen mit Nullen aufgefüllt werden, falls Deine ID kleiner ist.

Die Änderung an einem Datensatz soll mit einem Zeitstempel versehen werden
Das machst Du einfach, indem Du TIMESTAMP als Datentyp verwendest. Wenn Du anfangs als Wert NULL lässt (ist ja standardmäßig schon vorgegeben, wenn das Attribut im CREATE TABLE-Befehl nicht mit NOT NULL angegeben wurde) , erhältst Du automatisch den aktuellen Zeitstempel schon bei der ersten Ausführung.

Es gibt Geburtsdaten, von denen sind mir nicht immer Tag und Monat bekannt, wie kann ich sie dennoch eintragen? Geht das?
Ja das geht. Anstelle der unbekannten Teile setzt Du jeweils eine 0. Also, wenn z.B. der Monat unbekannt ist, kann man ‚2017-00-14’ eintragen. MySQL kann dann trotzdem mit diesem Datum Berechnungen durchführen.

Die „natürliche“ Haarfarbe soll möglichst einheitlich angegeben werden. Zur Auswahl stehen blond, braun, schwarz und rot. Kann man das irgendwie eingrenzen?
Hier kannst Du ENUM('blond’, 'braun’, 'schwarz’, 'rot’) angeben. Der Nutzer kann im Feld dann nur einen dieser Werte eintragen. Alles andere erzeugt einen Fehler.
 
Weiß einer wie man folgende Anforderungen erfüllen kann?

- Meine IDs sollen alle 10-stellig sein
Datentyp? Du könntest UUID nehmen, der ist aber (binär gespeichert) länger, 16 Byte.

- Die Änderung an einem Datensatz soll mit einem Zeitstempel versehen werden

via TRIGGER ein Datenfeld mitführen

- Es gibt Geburtsdaten, von denen sind mir nicht immer Tag und Monat bekannt, wie kann ich sie dennoch eintragen? Geht das?
DATERANGE auf den Bereich

- Die „natürliche“ Haarfarbe soll möglichst einheitlich angegeben werden. Zur Auswahl stehen blond, braun, schwarz und rot. Kann man das irgendwie eingrenzen?
[/quote]


ENUM. Wobei ich ENUM nicht mag.
 
Werbung:
Zurück
Oben