Hi leute ich hab ein problem mit meiner Select abfrage, ich hab eine Datenbank einer Buchhandlung und soll dafür eine Gui programmieren. Doch es hängt schon bei der select abfrage.
Wenn ich "Select * from Bücher;" klappt alles wunderbare. Doch wenn ich
"Select Titel from Bücher Where Titel = XXXX;" dann klappt nichts mehr.
Ich komm als Fehlermeldung das 1 Parameter wurden erwartet, aber es wurden zu wenig Parameter übergeben wurden.
Hoffe ihr könnt mir Helfen, ich füge noch den code der Klasse ein damit ihr es euch anschauen könnt.
Danke schonmal im voraus
Wenn ich "Select * from Bücher;" klappt alles wunderbare. Doch wenn ich
"Select Titel from Bücher Where Titel = XXXX;" dann klappt nichts mehr.
Ich komm als Fehlermeldung das 1 Parameter wurden erwartet, aber es wurden zu wenig Parameter übergeben wurden.
Hoffe ihr könnt mir Helfen, ich füge noch den code der Klasse ein damit ihr es euch anschauen könnt.
Danke schonmal im voraus
Code:
import java.sql.Statement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.util.Vector;
import javax.swing.JTable;
public class Datenanbindung {
public JTable table;
/** Creates a new instance of Datenanbindung */
public void abfrage() {
//String wert1 = a;
//String wert2 = b;
//String wert3 = c;
Vector columnNames = new Vector();
Vector data = new Vector();
try{
//Abfrage definieren
String query = "SELECT Titel From Bücher WHERE Titel = Cowboy;";
// String query = "SELECT *FROM Bücher;";
//Datenbankverbindung herstellen
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con=DriverManager.getConnection( "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=G:/Users/mildi/Desktop/InMa/InmaBuchhandlung.mdb","","" );
System.out.println("Connection Successful ");
Statement stmt = con.createStatement();
ResultSet rst = stmt.executeQuery(query);
ResultSetMetaData md = rst.getMetaData();
int columns = md.getColumnCount();
// Spaltennamen ermitteln
for (int i = 1; i <= columns; i++) {
String colname=md.getColumnName(i);
columnNames.addElement( colname );
}
// Zeileninhalt ermitteln
while (rst.next()) {
Vector row = new Vector(columns);
for (int i = 1; i <= columns; i++) {
row.addElement( rst.getObject(i) );
}
data.addElement( row );
}
rst.close();
stmt.close();
} catch(Exception e) {
e.printStackTrace();
}
// Tabelle erzeugen
table = new JTable(data, columnNames);
//scrollTabelle.setViewportView(table);
}
public JTable rückantw()
{
return this.table;
}
// <editor-fold defaultstate="collapsed" desc=" Generated Code ">
// Variablendeklaration
//private javax.swing.JScrollPane scrollTabelle;
}