Moin,
versuche seit ein paar Stunden, mich an Datenbanken und Java heran zu tasten. Dazu wollte ich mittels Derby eine embedded Datenbank erstellen. Um es vorweg zu nehmen: Von "guten Kentnissen" in sachen Datenbanken bin ich weit weg. Das Thema wurd in der schule zwar mal angeschnitten, aber das hat sich nur auf ein paar abfragen einer mysql datenbank beschränkt.
Daher wollte ich für den Anfang erstmal nur ein bisschen mit den Befehlen herum spielen, um der Sache etwas näher zu kommen. Aber da bin ich schon gleich vor die Wand gelaufen :autsch:
Mein Programm sieht im moment so aus:
Einfach ein Fenster mit nem Button, der die Befehle dann zur DB sendet. Die Tabelle erstellen und einen Datensatz einfügen funktioniert ohne Probleme. Aber sobald er zu dem Select-Befehl kommt, spuckt er folgendes aus:
Bei der suche hier im Forum bin ich auf einen Beitrag gestoßen, wo jemand das selbe Problem hatte. Von seiner "Lösung" habe ich die drei Befehle 1:1 kopiert und trotzdem läuft es nicht.
Auch wenn ich Zeile 51 durch
ersetze, zickt er rum. Da bekomme ich folgenden Fehler:
Bei letzterem meckert er ja wegen syntax, aber wie formuliere ich das richtig? Bei dem SQL-kram in der Schule hat es so funktioniert
Ich hoffe mal, dass mir da jemand auf die Sprünge helfen kann 
gruß SteeL
versuche seit ein paar Stunden, mich an Datenbanken und Java heran zu tasten. Dazu wollte ich mittels Derby eine embedded Datenbank erstellen. Um es vorweg zu nehmen: Von "guten Kentnissen" in sachen Datenbanken bin ich weit weg. Das Thema wurd in der schule zwar mal angeschnitten, aber das hat sich nur auf ein paar abfragen einer mysql datenbank beschränkt.
Daher wollte ich für den Anfang erstmal nur ein bisschen mit den Befehlen herum spielen, um der Sache etwas näher zu kommen. Aber da bin ich schon gleich vor die Wand gelaufen :autsch:
Mein Programm sieht im moment so aus:
Java:
import java.awt.Button;
import java.awt.Frame;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class Start extends Frame{
private Button los;
private Connection con;
public static void main(String[] args)
{
new Start();
}
public Start()
{
this. setSize(500,500);
this.setVisible(true);
this.setLayout(null);
los = new Button("los");
los.setBounds(50,50,100,20);
add(los);
los.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
aktion();
}});
try {
Class.forName("org.apache.derby.jdbc.EmbeddedDriver").newInstance();
con = DriverManager.getConnection( "jdbc:derby:testDB;create=true" );
} catch (Exception e1)
{
System.out.println(e1.getMessage());
}
}
private void aktion()
{
Statement test;
ResultSet rs;
try {
test = con.createStatement();
test.executeUpdate("CREATE TABLE PUNKTELISTE (NAME VARCHAR(50), Punkte INTEGER)");
test.executeUpdate("INSERT INTO punkteliste (Name, Punkte) Values ('Hugo', 1234)");
rs = test.executeQuery("SELECT * FROM PUNKTELISTE");
System.out.println(rs.getString(1));
} catch (SQLException e) {
System.out.println(e.getMessage());
}
}
}
Einfach ein Fenster mit nem Button, der die Befehle dann zur DB sendet. Die Tabelle erstellen und einen Datensatz einfügen funktioniert ohne Probleme. Aber sobald er zu dem Select-Befehl kommt, spuckt er folgendes aus:
Java:
Invalid cursor state - no current row.
Bei der suche hier im Forum bin ich auf einen Beitrag gestoßen, wo jemand das selbe Problem hatte. Von seiner "Lösung" habe ich die drei Befehle 1:1 kopiert und trotzdem läuft es nicht.
Auch wenn ich Zeile 51 durch
Java:
rs = test.executeQuery("SHOW TABLES");
Java:
Syntax error: Encountered "SHOW" at line 1, column 1.
Bei letzterem meckert er ja wegen syntax, aber wie formuliere ich das richtig? Bei dem SQL-kram in der Schule hat es so funktioniert
gruß SteeL