Guten Abend liebe Community,
ich versuche schon seit heute Mittag ein Problem zu lösen auf das selbst mein Professor keine Lösung weiß....
Nämlich ich möchte von einer Tabelle in einer Derby Datenbank in Netbeans einen zufälligen Datensatz herausfiltern.
Nun habe ich in Netbeans ein Worksheet auf meine Connection geöffnet und folgendes eingegeben:
Das funktioniert wunderbar, alle Datensätze wo die Sprache 0 also Deutsch ist werden bunt gemischt zurückgegeben.
Aber wenn ich jetzt in Netbeans in meine WordFacade folgendes mache:
liefert es mir folgenden Fehler wenn ich Debugge und über
mit der Maus fahre
Nun habe ich die versucht die Query mit Alias zu schreiben:
aber auch das brachte keinen Erfolg, da der Fehler immer noch da war....
Könnt ihr mir erklären woran das liegt?
Wäre dringend da ich die Testverbesserung bis heute um 2 Uhr abgeben müsste ...
Vielen Dank im Voraus
Mit freundlichen Grüßen
Johannes
ich versuche schon seit heute Mittag ein Problem zu lösen auf das selbst mein Professor keine Lösung weiß....
Nämlich ich möchte von einer Tabelle in einer Derby Datenbank in Netbeans einen zufälligen Datensatz herausfiltern.
Nun habe ich in Netbeans ein Worksheet auf meine Connection geöffnet und folgendes eingegeben:
SQL:
select word, language from word where language = 0 order by random();
Das funktioniert wunderbar, alle Datensätze wo die Sprache 0 also Deutsch ist werden bunt gemischt zurückgegeben.
Aber wenn ich jetzt in Netbeans in meine WordFacade folgendes mache:
Java:
String stmt ="select word, language from word "
+ "where language = "+ langNr +" "
+ "order by random()";
if (em.createQuery(stmt).getSingleResult() == null) {
return "Keine words gefunden";
}
return em.createQuery(stmt).getSingleResult().toString();
liefert es mir folgenden Fehler wenn ich Debugge und über
Java:
em.createQuery(stmt).getSingleResult()
mit der Maus fahre
Code:
em.createQuery(stmt) = >Exception occurred in target VM: An exception occurred while creating a query in EntityManager:
Exception Description: Syntax error parsing [select word, language from word where language = 0 order by random()].
[32, 32] An identification variable must be provided for a range variable declaration.
[67, 67] The encapsulated expression is missing.<
Nun habe ich die versucht die Query mit Alias zu schreiben:
SQL:
select w.word, w.language from WORD w where w.language = 0 order by random()
aber auch das brachte keinen Erfolg, da der Fehler immer noch da war....
Code:
em.createQuery(stmt) = >Exception occurred in target VM: An exception occurred while creating a query in EntityManager:
Exception Description: Syntax error parsing [select w.word, w.language from WORD w where w.language = 0 order by random()].
[75, 75] The encapsulated expression is missing.<
Könnt ihr mir erklären woran das liegt?
Wäre dringend da ich die Testverbesserung bis heute um 2 Uhr abgeben müsste ...
Vielen Dank im Voraus
Mit freundlichen Grüßen
Johannes