MySQL JAVA Datum-Format überprüfen

sophie19890

Grünschnabel
Hallo!

Ich habe über JAVA eine Oberfläche programmiert. In einem Feld soll der Benutzer ein Datum mit dem Format 'DD.MM.YYYY' hineinschreiben.

Wie überprüft man am einfachsten, ob der Benutzer das Datum mit dem richtigen Format eingegeben hat?

Das Datum kann in JAVA, so wohl als auch mit MySQL überprüft werden.

Danke im Voraus
Sophie
 
Das Thema gehört doch dann eher in die Java Ecke, oder? ;)

Das geht relativ einfach mit einem JFormatedTextField.
Oder du bietest 3 JComboBoxen an, in denen der User nach und nach das Datum auswählen muss.
 
Danke!


Für Personen, die einmal das gleiche Problem haben wie ich:

JFormattedTextfield ist nicht empfehlenswert, wenn der Benutzer das Datum falsch eingibt, so wird das Datum zwar richtig formatiert, aber der Benutzer hat noch immer die Möglichkeit komplett Falsches in die Datenbank zu speichern. Prinzipiell funktioniert es gut.

JComboBox ist wahrscheinlich am besten. Der User hat einen besseren Überblick. Es ist halt aufwendiger, als ein einfache Fehlmeldung z.B. durch ein JOptionPane-Fenster.
Falls man die Möglichkeit NULL-Werte speichern zu können, möchte, kann bei der JComboBox für Tag, Monat und Jahr die Option "0" einfügen.
TO_DATE('00.00.0000','DD.MM.YYYY') liefert NULL.
Einziger Nachteil ist, dass man schon vorher wissen muss, welche Jahre gespeichert werden können.

Theoretisch kann man noch einen INSERT-Befehl anwenden und mit try und catch die Fehlermeldung auffangen und nachher kann man diese verarbeiten. Ist aber noch aufwendiger.


lg Sophie
 
Zuletzt bearbeitet:
Wenn ich dir da noch einen Tipp zu den Comboboxen geben darf:
Ermögliche zuerst die Angabe des Jahres -> dann des Monats -> und DANN des Tages. So kannst du sicherstellen, dass der User kein unwirckliches Datum nimmt, weil du so die auswählbaren Tage vorgeben kannst ;)
 
Zurück