HSQLDB Probleme mit Select...Where Abfrage

big-mike

Mitglied
Hallo zusammen,

ich versuche für einen selbst programmierten Kalender einen String aus einer HSQLDB abzufragen indem ich eine Uhrzeit vergleiche. Dabei bekomme ich aber einen SQL Fehler: "unexpected Token: : ". Das macht aber keinen Sinn meiner Ansicht nach, da das TIME Format in der Datenbank so aussieht: "12:00:00"

Java:
String query = "SELECT Notiz FROM Termine WHERE Uhr = "+timeFormat.format(tableData[rowIndex]);
              rs = st.executeQuery(query);
              String notiz = rs.getString(0);

hab jetz schon länger rumprobiert und keine Ahnung was die Lösung zu meinem Problem ist.
Wenn ich die Abfrage ausgeben lasse sieht sie so aus: "SELECT Notiz FROM Termine WHERE Uhr = 22:00:00" das müsste doch von SQL Seite her korrekt sein?!

Grüße
 
M

maki

Gast
Das datum vielleciht mal in " oder ' schreiben.

Diese & andere Probleme erspart man sich wenn man prepared statements nimmt und sein SQL nicht per Hand zusammenfrickelt ;)
 

big-mike

Mitglied
Anführungszeichen, einfache zumindest, hab ich versucht, wie könnt ich normale in einen string einbauen?

und was meinst du mit prepared statements? Ich muss die Anfrage variabel halten, je nach angeklickten datum, daher das zusammenfrickeln^^
 

Michael...

Top Contributor
und was meinst du mit prepared statements? Ich muss die Anfrage variabel halten, je nach angeklickten datum, daher das zusammenfrickeln^^
Java:
	Connection con = ...;
	PreparedStatement pstmt = con.prepareStatement("Select * From Termine Where Uhr=?");
	pstmt.setTime(1, hierMussDieZeitRein); // Typ java.sql.Time
	ResultSet re  = pstmt.executeQuery();
 
Zuletzt bearbeitet:

big-mike

Mitglied
ich hab zunächst einen Jahreskalender und wenn man auf ein Datum klickt kommt eine Tagesansicht, in die Einträge aus der Datenbank zu diesem Tag geladen werden und in eine Tabelle mit Uhrzeit in der richtigen Zeile eingetragen werden. Ich brauch natürlich dann in der SQL Anfrage auch ein Vergleich des Datums aber die Zeit funktioniert bisher ja auch noch nicht. Die müsste ich ja nur per AND dann noch anfügen wenn ich mich nicht täusche
 

big-mike

Mitglied
jetz schluckt er die Anfrage aber mit dem ResultSet will er wohl nicht arbeiten...

Java:
Time uhr = new Time(tableData[rowIndex].getTime());
              PreparedStatement pstmt = cn.prepareStatement("Select NOTIZ From TERMINE Where UHR=?");
              pstmt.setTime(1, uhr); // Typ java.sql.Time
              ResultSet re  = pstmt.executeQuery();

System.out.println(re.getNString("Notiz"));
              String notiz = re.getString(0);

Bei re.getString(0) sagt er mir: "Column 0 not found" und bei Notiz gibt er "nvalid cursor state: identifier cursor not positioned on row in UPDATE, DELETE, SET, or GET statement: ; ResultSet is empty" Wenn ich die Datenbank aber aus einer anderen Klasse abfrage, liefert diese mir die Daten, also kann sie nicht leer sein...
 

big-mike

Mitglied
danke für die bisherigen antworten. So weit tuts jetzt auch. jetz möchte ich noch in das gleiche statement über AND einen vergleich mit dem Datum einbaun der net so funktioniert wie ich mir des denk...

Java:
 Time uhr = new Time(tableData[rowIndex].getTime());
              java.sql.Date sqlclickedDate= new java.sql.Date(clickedDate.getDate());
              PreparedStatement pstmt = cn.prepareStatement("Select NOTIZ From TERMINE Where UHR=? AND DATUM=?");
              pstmt.setTime(1, uhr); // Typ java.sql.Time
              pstmt.setDate(2, sqlclickedDate);
              ResultSet re  = pstmt.executeQuery();

sieht hier jemand meinen Fehler? liefert mir keine Exception aber auch kein Ergebnis.
 

big-mike

Mitglied
ah daran liegt das Problem, der macht da ewie aus dem angeklickten Datum 1970-01-01...
das heißt ich muss die umwandlung aus DATE zu java.sql.Date anders anstellen
 

big-mike

Mitglied
Tue May 24 15:00:00 CEST 2011

das steht zum beispiel in dem clickDate...

Java:
              java.sql.Date sqlclickedDate= new java.sql.Date(clickedDate.getYear(), clickedDate.getMonth(), clickedDate.getDay());

so funktioniert des ganze leider auch nicht
 
M

maki

Gast
sqlclickedDate enthält eine Uhrzeit, Zeitzone, etc. pp., nicht nur das Datum, da wirst du dir schwer tun imho mit einem [c]=[/c] Vergleich in SQL.
 

big-mike

Mitglied
jap is mir auch aufgefallen aber au wenn ichs so zu umgehen versuche, bekommt sqlclickedDate was falsches übergeben

Java:
int year = clickedDate.getYear();
              int month = clickedDate.getMonth();
              int day = clickedDate.getDay();
              java.sql.Date sqlclickedDate= new java.sql.Date(year, month, day);
 

Rin

Mitglied
jap is mir auch aufgefallen aber au wenn ichs so zu umgehen versuche, bekommt sqlclickedDate was falsches übergeben

Java:
int year = clickedDate.getYear();
              int month = clickedDate.getMonth();
              int day = clickedDate.getDay();
              java.sql.Date sqlclickedDate= new java.sql.Date(year, month, day);

willst du das angegebene datum mit dem aktuellen vergleichen?

also wenn ich mit dem aktuellen datum vergleichen will verwende ich immer die SQL Date() oder Now() funktion Date Functions in SQL Server and MySQL

vielleicht hilft dir das ja
 

big-mike

Mitglied
nein, es sollte mit jedem Datum, das mein selbst geschriebener Kalender liefert vergleichen.

Danke für den Hinweis, aber inzwischen gehts, ohne dass ich großartig was verändert hätte...
Kann mir nicht erklären wieso, aber wenigstens funktionierts :D
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Probleme bei Select in Schleife Datenbankprogrammierung 7
4 Probleme mit Select abfrage Datenbankprogrammierung 4
TH260199 Java-Programm. Probleme bei der Umsetzung von einer Kontaktverwaltung. Datenbankprogrammierung 7
Zrebna Probleme bei Überführung von SQL-Code in eine HQL-Abfrage Datenbankprogrammierung 3
Kirby.exe Probleme mit docker-compose.yml Datenbankprogrammierung 4
B Probleme mit Datenbankverbindung Datenbankprogrammierung 2
N java SQL JAR - Probleme Datenbankprogrammierung 18
S probleme mit dem jdbc treiber Datenbankprogrammierung 1
T Oracle Probleme bei getTableName Datenbankprogrammierung 8
B Probleme mit java.sql.SQLException: ResultSet closed Datenbankprogrammierung 21
D Probleme bei Einsteiger Aufgabe SQL Datenbankprogrammierung 2
M JAVA Derby INSERT probleme Datenbankprogrammierung 12
Z MySQL Probleme mit resultSet executQuery Datenbankprogrammierung 3
H Probleme mit Unicodedarstellung in Derby DB Datenbankprogrammierung 1
M MySQL probleme beim "Generate Tables from Entities" Datenbankprogrammierung 9
L Probleme mit DriverManager.getConnection(..) - Endlosschleife, Java Absturz, Keine Exception Datenbankprogrammierung 4
S Derby/JavaDB Probleme beim anlegen einer embedded DB Datenbankprogrammierung 13
P Probleme mit meinem 1. Hibernate Beispiel Datenbankprogrammierung 3
W Probleme mit AND und OR Datenbankprogrammierung 5
D DB Tabelle in JTable anzeigen - Probleme Datenbankprogrammierung 8
Gossi CallableStatement Probleme Datenbankprogrammierung 8
D Probleme bei der Erzeugung einer Tabelle Datenbankprogrammierung 15
L MySQL Probleme mit PreparedStatement für SQL-Abfrage in Java Datenbankprogrammierung 2
R Derby/JavaDB Insert Statement Probleme Datenbankprogrammierung 14
L Derby/JavaDB Derby macht Probleme Datenbankprogrammierung 4
M Probleme mit Triggering Datenbankprogrammierung 2
F DB2 Probleme mit dem DriverManager Datenbankprogrammierung 4
S Derby/JavaDB OpenJPA, @oneToMany und Probleme Datenbankprogrammierung 2
I MySQL Probleme mit kyrillischen Zeichen Datenbankprogrammierung 2
A Derby/JavaDB Probleme beim Einbinden Datenbankprogrammierung 2
S Probleme mit INSERT Befehl Datenbankprogrammierung 11
R isLast() Probleme bei Pervasive Datenbankprogrammierung 5
S Probleme mit localhost Datenbankprogrammierung 14
M Oracle Probleme mit dem anbinden einer Oracle 10g Datenbank Datenbankprogrammierung 27
J MySQL Hibernate: Probleme beim Speichern von OneToMany - Datensätzen Datenbankprogrammierung 2
P Hibernate -> Probleme bei n:m-Relation und JUnit Datenbankprogrammierung 10
J Probleme mit Datenbankzeiger Datenbankprogrammierung 19
A Probleme mit auf DB2 Express zugreiffen Datenbankprogrammierung 6
N Probleme beim Aufruf aus der DB Datenbankprogrammierung 7
G Probleme mit Datenbankanbindung Datenbankprogrammierung 3
R Probleme mit Insert Datenbankprogrammierung 2
P Probleme mit Oracle Timestamp Datenbankprogrammierung 3
klattiator Hibernate - Probleme bei Konfiguration Datenbankprogrammierung 3
F Probleme mit entfernter DB und Hibernate Zeichensatz Datenbankprogrammierung 3
G Probleme mit der Schnittstelle H1bernate/Eclipse Datenbankprogrammierung 6
A Probleme mit Jar-File in ein Jar-File Datenbankprogrammierung 8
O Derby Performance Probleme? Datenbankprogrammierung 4
V Probleme beim Öffnen "einiger" SuperbaseTabellen p Datenbankprogrammierung 8
G Probleme beim Methodenaufruf einer EJB Datenbankprogrammierung 10
ARadauer hibernate probleme Datenbankprogrammierung 13
Y Probleme mit H2 und Primary Key Datenbankprogrammierung 4
D Probleme mit mysql-Connection Datenbankprogrammierung 10
G INNODB backup probleme Datenbankprogrammierung 2
S Probleme mit statement.close() Datenbankprogrammierung 10
A Probleme beim Schreiben in eine CSV-Datei aus einer H2-DB Datenbankprogrammierung 2
G Probleme mit Laden des JDBC-Treiber in HSQLDB Datenbankprogrammierung 2
T Probleme mit Date in H2 Datenbank Datenbankprogrammierung 2
N Probleme mit Access-DB bei einem Webserver Datenbankprogrammierung 5
T Diverse JDBC Probleme (inner join, rs.last(), update) Datenbankprogrammierung 2
R Probleme mit Datensätzen in MySql DB Datenbankprogrammierung 3
B Oracle Driver Probleme Datenbankprogrammierung 2
I Probleme bei MySQL - Replikation Datenbankprogrammierung 2
R Probleme mit ausführbarem Jar Archiv Datenbankprogrammierung 9
F Probleme mit Jar Datei Datenbankprogrammierung 3
S String probleme Datenbankprogrammierung 3
R Probleme mit der Verbindung zum localhost Datenbankprogrammierung 12
S Probleme bei der Installation von MySQL 5.0 Datenbankprogrammierung 4
A Probleme mit ResultSet und getString(i) Datenbankprogrammierung 13
G Probleme mit Access und Join Datenbankprogrammierung 3
N Probleme mit "nur vorwärts gerichtete ResultSet" Datenbankprogrammierung 7
M Daten von MySQL nach MSSql probleme beim schreiben Datenbankprogrammierung 3
S JDBC-Anfänger und Probleme beim Treiberfinden etc. Datenbankprogrammierung 4
T Probleme beim Verbindungsaufbau zum SQL 2000 Datenbankprogrammierung 2
G Probleme mit Datenbankeinträge Datenbankprogrammierung 4
G Probleme mit Treiber (connector) Datenbankprogrammierung 20
thE_29 getBytes() - russland/bulgarien -- andere Codecs Probleme Datenbankprogrammierung 8
E Probleme mit JDBC und Executable-Jar Datenbankprogrammierung 2
G Probleme mit MySQL - Anmeldung Datenbankprogrammierung 2
P Probleme mit NullPointerException Datenbankprogrammierung 5
K MySQL: Probleme mit dem Verbinden per IP-Adresse Datenbankprogrammierung 6
T Probleme mit Datenbank Datenbankprogrammierung 6
I Hibernate / JPA - Spaltenname von Query (Select) bekommen Datenbankprogrammierung 6
OnDemand Select * from bringt keine Rückgabe Datenbankprogrammierung 49
OnDemand Select vs Update ins blaue, was ist teurer? Datenbankprogrammierung 11
M JPA: select all mit unterschiedlichem Tablename Datenbankprogrammierung 2
A MySQL Select und Insert in Java Datenbankprogrammierung 15
J JPA: Wie sieht der select aus? Datenbankprogrammierung 2
D geänderte SELECT Abfragen Datenbankprogrammierung 15
N SQLite Hibernate und Aufruf von Funktion SELECT last_insert_rowid() Datenbankprogrammierung 2
T sqlite select Datenbankprogrammierung 12
D Oracle NullPointerException bei select mit Null Values Datenbankprogrammierung 5
F MySQL Was bedeuten die Einzelnen Zeichen in Select Querrys? Datenbankprogrammierung 1
J SQL SELECT mit einem Array Datenbankprogrammierung 1
J SELECT Abfrage/Suche Datenbankprogrammierung 4
E Kann man in einer if-Bedingung auch SELECT-Statements überprüfen? Datenbankprogrammierung 23
M SQL-Exception trotz funktionierendem SELECT Datenbankprogrammierung 4
U PostgreSQL SELECT Statement Datenbankprogrammierung 5
L Select Anweisung wird falsch interpretiert Datenbankprogrammierung 3
C HSQLDB Platzhalter in SELECT Datenbankprogrammierung 6
I SELECT bei Datenbankverbindung Datenbankprogrammierung 6

Ähnliche Java Themen

Neue Themen


Oben