# Datum in MySQL Timestamp umwandeln?



## Guest (18. Mai 2005)

Hey...

Hat jemand mal ein Beispiel für mich, wie ich eine Datumsangabe in ein MySQL Timestamp(14) unwandeln kann??
  Format 1) -> 30.09.2005
  Format 2) -> 30-09-2005

Danke...


Gruß
Gast


----------



## thE_29 (18. Mai 2005)

Wenn du das brauchst um auf die Datenbankzu schreiben oder so reicht es wenn du PreparedStatement´s mit dem Date format nimmst, der wandelt das dann schon richtig um!


----------



## AlArenal (18. Mai 2005)

Lass die DB die Arbeit machen, für die sie nunmal da ist:

http://dev.mysql.com/doc/mysql/en/date-and-time-functions.html


----------



## Guest (18. Mai 2005)

Meine MySQL Version erlaubt mit nicht z.B. den Befehl auszuführen.

```
INSERT INTO table_BLUBB (Blub) Values (TIMESTAMP('30-09-2005 00:00:00'))
```

Gibt es eine Möglichkeit diesen Timestamp via Funktion zu generieren, um danach den TimeStamp zu schreiben??


----------



## thE_29 (18. Mai 2005)

Wieso nimmst du nicht einfach PreparedStatement statt normale Statements????


Dann brauchst du weder was genieren noch rumschreiben noch sonst!!


----------



## Guest (18. Mai 2005)

Okay..., aber wie soll ich das Datum hier einfügen??

```
MyPreparedStatement.setTimestamp(meineStelle, ??????????)
```


----------



## thE_29 (18. Mai 2005)

In welcher Form hast du das Datum vorliegen??

Nur in der String Form?


----------



## Guest (18. Mai 2005)

Jepp.... müsste also ins Long oder den String nach  ' . '  oder  ' - '  aufteilen... schätze ich mal!!


----------



## thE_29 (18. Mai 2005)

Nene 

Das geht ganz prima mit 

SimpleDateFormat!

Du sagst das ungefähr so


```
private Date methodeOberBlaaa(String strDate)
{


  SimpleDateFormat fmt1 = new SimpleDateFormat("dd.MM.yyyy"); 

  SimpleDateFormat fmt2 = new SimpleDateFormat("dd-MM-yyyy"); 

    Date d = null;
    try
    {
      d = fmt1.parse(strDate);
    }
    catch (ParseException ex)
    {
      try{
        d = fmt2.parse(strDate);
      }
      catch(ParseException ex1)
      {
        ex1.printStackTrace();
        System.out.println("ILLEGAL DATE FORMAT!!!");
      }
    }
return d;
}
```


Dann hast du dein Datum!

Am besten guck dir die API dazu an und mach ein paar Testaps!


----------



## Guest (18. Mai 2005)

Nur noch zur Vollständigkeit, vielleicht sucht ja mal jemand danach...

```
MyPreparedStatement.setTimestamp(MeinePosition,  new Timestamp(DateVariable.getTime()));
MyPreparedStatement.execute();
```

Vielen Dank... klappt gut 

Gruß
Gast


----------



## thE_29 (18. Mai 2005)

Du kannst setDate auch nehmen 

Das preparedstatement wandelt das von alleine um (das meinte ich von Anfang an)


----------

