# CURRENT_DATE problem



## Sakura26 (26. Okt 2012)

Hallo, 

ich habe ein Problem mit folgenden Query: 


```
public static List<TM> getStandardTMs() {
		
		
		try
		{
			PreparedStatement pstmt = dbConInstance.prepareStatement
			("INSERT INTO tm (id, contract, name, description, ttp_internal, ttp_external, planed_time, lock_date, needs_comment, billable, calculable "+
			 "SELECT 0, 746, tm.name, NULL, 0, 0, 0, CURRENT_DATE(), 0, 0, 0 FROM tm "+ 
			 "JOIN tm_standard ON tm_standard.tm = tm.id "+
			 "JOIN user_customer ON user_customer.customer = tm_standard.customer "+
             "WHERE user_customer.user = 121 ");


			Log.trace(pstmt.toString());
			pstmt.execute();
		
		
		} catch (SQLException e)
		{
			String method = "getStandardTMs()";
			Log.error("Error in " +method, e);
		}
		return null;
	}
```

Fehlermeldung: 

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT 0, 746, tm.name, NULL, 0, 0, 0, CURRENT_DATE(), 0, 0, 0 FROM tm JOIN tm_s' at line 1

Diese Fehlermeldung bekomme ich nur wenn ich meine Applikation ausführe, wenn ich den Query in phpmyAdmin ausführe, tut er das was er tun muss. Hat es was mit den CURRENT_DATE zu tun? 

Vielen Dank im vorraus!


----------



## SlaterB (26. Okt 2012)

bist du dir sicher, dass du in phpmyAdmin auch

```
[..]lock_date, needs_comment, billable, calculable SELECT 0, 746, [..]
```
ohne jedes Komma, Klammer oder sonstwas zwischen calculable und SELECT  eintippst?

immer in Java das SQL in einen String, ausgeben (oh, hast du ja sogar: Log.trace(pstmt.toString()); ), 
und 1:1 nach phpmyAdmin übergeben, wenn du schon solche Vergleiche heranziehst

Anzahl öffnende/ schließende Klammern vergleichen ist auch ein erlaubter Grundschritt


----------



## Sakura26 (26. Okt 2012)

OMG klammer hat gefehlt :lol: danke dir :toll:


----------

