Ich wollte auf meinem Speichernbutton eine Prüfung einführen ob der eingegebene Wert aus dem Textfeld ID schon vorhanden ist. Seither krieg ich allerdings immer nachfolgende Fehlermeldungen.
Liefert denn ein Resultget.getString keinen String zurück?
scheint nicht zu funktionieren
Hier mal der ganze Code.
$
Konsolenausgabe:
Liefert denn ein Resultget.getString keinen String zurück?
Java:
eingabe = rs.getString("id") + "";
Hier mal der ganze Code.
Java:
public void actionPerformed(ActionEvent event)
{
Connection con = null;
try
{
Statement stmt;
Class.forName("com.mysql.jdbc.Driver").newInstance();
con = DriverManager.getConnection(
"jdbc:mysql://localhost/movies", "root", "");
stmt = con.createStatement(); // Generiert ein Object vom
// Typ
// Statement
id = getID.getText();
title = getTitle.getText();
genre = getGenre.getText();
year = getYear.getText();
media = (String) getMedia.getSelectedItem();
if (year.length() == 0)
{
year = null;
}
else
{
year = "'"+year+"'";
}
if (id.length() == 0)
{
System.out.println("Es muss eine Nummer für den Film vergeben werden");
}
else
if (title.length() == 0)
{
System.out.println("Es muss ein Titel für den Film vergeben werden");
}
else
{
//eingabe = "1";
//if(id.equals(eingabe))
//{
// System.out.println("id = eingabe");
//}
//else
//System.out.println("id != eingabe");
//System.out.println("id ist: "+id+"eingabe ist: "+eingabe);
System.out.println("eingegebene id ist: "+id);
System.out.println("SELECT id FROM movies where id = "+id);
rs = stmt.executeQuery("SELECT id FROM movies where id = "+id);
//System.out.println("id aus select ist: "+rs.getInt("id"));
System.out.println("query wurde wenigstens ausgeführt...");
//eingabe = .... funktioniert nicht, wieso?
eingabe = rs.getString("id") + "";
//eingabe = .... funktioniert nicht, wieso?
System.out.println("eingabe ist: "+eingabe);
if (id.equals(eingabe))
{
System.out.println("id ist schon vorhanden");
}
else
stmt.executeUpdate("INSERT INTO movies(id,title,genre,year,media) VALUES('"
+ id
+ "','"
+ title
+ "','"
+ genre
+ "',"
+ year
+ ",'" + media + "')");
}
} catch (SQLException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InstantiationException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ClassNotFoundException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
} finally
{
try
{
if (con != null)
con.close();
} catch (SQLException e)
{
}
}
}
}
Konsolenausgabe:
Code:
eingegebene id ist: 1
SELECT id FROM movies where id = 1
query wurde wenigstens ausgeführt...
java.sql.SQLException
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1055)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:926)
at com.mysql.jdbc.ResultSetImpl.checkRowPos(ResultSetImpl.java:815)
at com.mysql.jdbc.ResultSetImpl.getStringInternal(ResultSetImpl.java:5528)
at com.mysql.jdbc.ResultSetImpl.getString(ResultSetImpl.java:5448)
at com.mysql.jdbc.ResultSetImpl.getString(ResultSetImpl.java:5488)
at ch.haag.Start.MainGUI$SpeichernListener.actionPerformed(MainGUI.java:228)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)