Hallo,
ich habe ein Programm, mit welchem ich mich mit MySQL-Datenbank verbinden moechte.
Hier der Quelltext:
Leider bringt es folgende Fehlermeldung:
Ich sollte zuvor aber die CLASSPATH-Variable unter Systemsteuerung, System, System Properties, Environment Variables erzeugen. Dort gibt es aber unter Vista im Dialog zwei Varianten, einmal die Benutzervariable zu erzeugen und Systemvariable. Als Name der Variable soll ich CLASSPATH waehlen und folgenden Wert uebergeben:
Das habe ich getan und zwar als Benutzervariable und als Systemvariable und die jar-Datei auch unter diesem Pfad abgelegt:
.;C:\mysql-connector-java-3.0.14-production\mysql-connector-java-3.0.14-production\mysql-connector-java-3.0.14-production-bin.jar
und auch dieses Verzeichnis angelegt:
c:\Java\eigeneKlassen
aber erfolglos. Das Programm starte ich mit Eclipse.
Hat jemand Ahnung wo das Problem liegt? :bahnhof::rtfm:
ich habe ein Programm, mit welchem ich mich mit MySQL-Datenbank verbinden moechte.
Hier der Quelltext:
Java:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class ConnectExampleMySQL extends Object{
public static Connection theConnection=null;
private Statement stmt=null;
private ResultSet result=null;
public static void main(String[] args) {
ConnectExampleMySQL ce=new ConnectExampleMySQL();
String machineName=((args.length>=1)? args[0] : "localhost");
ce.mysqlConnect( "", "", machineName);
ce.query();
try{
theConnection.close();
System.out.println("Verbindung wieder geschlossen.");
System.exit(0);
}catch(SQLException sqle){
System.out.println("Fehler beim Schliessen.");
System.exit(-1);
}
}//Ende main()
private void query() {
int maxPreis=0;
try{
stmt=theConnection.createStatement();
result=stmt.executeQuery("SELECT id, preis FROM artikel");
int id, preis;
while(result.next()){
id=result.getInt("id");
preis=result.getInt(2);
System.out.println("Der Preis fuer Produkt "+id+" betraegt: "+preis);
if(preis>maxPreis)maxPreis=preis;
}
}catch(SQLException sqle){
System.out.println("\nDer maximale Preis betraegt : "+maxPreis);
}
}//Ende Methode
private void mysqlConnect(String userID, String password, String machineName) {
if(theConnection==null){
try {
Class.forName("org.gjt.mm.mysql.Driver");
String connectionURL="jdbc:mysql://"+machineName+":3306/dbdemo";
theConnection=DriverManager.getConnection(connectionURL, userID, password);
}catch (ClassNotFoundException cnfe) {
System.out.println("ClassNotFoundException."+cnfe.getMessage());
}catch (SQLException sqle) {
System.out.println("SQLException."+sqle.getMessage());
}
}else{
System.out.println("Die DB-Verbindung exestiert bereits.");
}
}//Ende Methode
public void insert(){
try{
int rueck=stmt.executeUpdate("INSERT INTO abteilung (id, name, leiterID)"+ "VALUES (111, 'Zentralverkauf', 501)");
System.out.println("Rueckgabe von executeUpdate nach INSERT: "+rueck);
}catch(SQLException sqle){
System.out.println(sqle.toString());
}
}//Ende Methode
public void delete(){
try{
int rueck=stmt.executeUpdate("DELETE FROM abteilung WHERE name='Zentralverkauf'");
System.out.println("Rueckgabe von executeUpdate nach DELETE: "+rueck);
}catch(SQLException sqle){
System.out.println(sqle.toString());
}
}//Ende Methode
}
Leider bringt es folgende Fehlermeldung:
Code:
ClassNotFoundException.org.gjt.mm.mysql.Driver
Exception in thread "main" java.lang.NullPointerException
at ConnectExampleMySQL.query(ConnectExampleMySQL.java:30)
at ConnectExampleMySQL.main(ConnectExampleMySQL.java:16)
Ich sollte zuvor aber die CLASSPATH-Variable unter Systemsteuerung, System, System Properties, Environment Variables erzeugen. Dort gibt es aber unter Vista im Dialog zwei Varianten, einmal die Benutzervariable zu erzeugen und Systemvariable. Als Name der Variable soll ich CLASSPATH waehlen und folgenden Wert uebergeben:
Code:
.;C:\mysql-connector-java-3.0.14-production\mysql-connector-java-3.0.14-production\mysql-connector-java-3.0.14-production-bin.jar; c:\Java\eigeneKlassen
Das habe ich getan und zwar als Benutzervariable und als Systemvariable und die jar-Datei auch unter diesem Pfad abgelegt:
.;C:\mysql-connector-java-3.0.14-production\mysql-connector-java-3.0.14-production\mysql-connector-java-3.0.14-production-bin.jar
und auch dieses Verzeichnis angelegt:
c:\Java\eigeneKlassen
aber erfolglos. Das Programm starte ich mit Eclipse.
Hat jemand Ahnung wo das Problem liegt? :bahnhof::rtfm: