BloodyBastard
29.01.2002, 11:59
Moin !
Ich habe ein Problem mit einer Anbindung an eine mySQL-Datenbank :( .
Ich realisiere die Anbindung der Datenbank über ein eigenständiges Programm (Auszugnummer 2), welches zwei "Konstruktoren" enthält.
Dieses Programm wird aus einem zweiten aufgerufen, welches dann mit der Datenbank arbeiten soll (Auszugnummer 3).
---- Auszugnummer 1 ----
Folgendes ist die Fehlermeldung:
--snip--
java test2
Treiber gefunden
Fehler :
java.sql.SQLException: No suitable driver
--snip--
Ich habe schon mal versucht direkt aus der Klasse datenbank.class mir den Inhalt einer Testdatenbank ausgeben zu lassen, aber leider Fehlanzeige.
---- Auszugnummer 2 ----
Hier der jetzige Code der datenbank.class
--snip--
import java.sql.*;
public class datenbank
{
// Attribute
public String datenbankTyp;
public String datenbankName;
public String datenbankHost;
public int datenbankPort;
public String datenbankUser;
public String datenbankPassword;
// Konstruktoren
// nur der Datenbanktyp wird übergeben
public datenbank (String datenbankTyp, String datenbankName)
throws SQLException {
this.datenbankTyp = datenbankTyp;
this.datenbankTyp = datenbankName;
this.datenbankHost = "127.0.0.1";
this.datenbankPort = 3306;
this.datenbankUser = "root";
this.datenbankPassword = "";
datenbankTreiberSuche(datenbankTyp);
Connection connection;
connection = DriverManager.getConnection("jdbc:"+this.datenbankTyp+":/ /"+this.datenbankHost+"/"+this.datenbankName);
Statement statement = connection.createStatement();
}
// Datenbanktyp wird übergeben mit Host und Port
public datenbank (String datenbankTyp, String datenbankName, String datenbankHost, int datenbankPort, String datenbankUser, String datenbankPassword)
throws SQLException {
this.datenbankTyp = datenbankTyp;
this.datenbankTyp = datenbankName;
this.datenbankHost = datenbankHost;
this.datenbankPort = datenbankPort;
this.datenbankUser = datenbankUser;
this.datenbankPassword = datenbankPassword;
datenbankTreiberSuche(datenbankTyp);
Connection connection;
connection = DriverManager.getConnection("jdbc:"+this.datenbankTyp+":/ /"+this.datenbankHost+"/"+this.datenbankName);
Statement statement = connection.createStatement();
}
// Methoden
private static boolean datenbankTreiberSuche (String datenbankTreiber) {
String treiber = "";
String datenbankTyp = datenbankTreiber.toLowerCase();
if (datenbankTyp == "mysql") {treiber = "org.gjt.mm.mysql.Driver";
System.out.println("Treiber gefunden"); }
else { System.out.println("Es liegt kein passender Treiber vor!"); }
try { Class.forName(treiber); }
catch (NoClassDefFoundError e) { System.err.println(e); }
catch (ClassNotFoundException e) { System.err.println(e); }
catch (Exception e) { System.err.println(e); }
return true;
}
}
--snip--
---- Auszugnummer 3 ----
Und hier das Hauptprogramm :
import java.lang.*;
import java.sql.*;
public class test2
{
public static void main (String[] argv) {
try {
datenbank test = new datenbank("mysql","server");
} catch (SQLException e) {
System.out.println("Fehler : \n"+e);
}
}
}
Ich hoffe ihr könnt mir weiterhelfen!
MfG
BB
Ich habe ein Problem mit einer Anbindung an eine mySQL-Datenbank :( .
Ich realisiere die Anbindung der Datenbank über ein eigenständiges Programm (Auszugnummer 2), welches zwei "Konstruktoren" enthält.
Dieses Programm wird aus einem zweiten aufgerufen, welches dann mit der Datenbank arbeiten soll (Auszugnummer 3).
---- Auszugnummer 1 ----
Folgendes ist die Fehlermeldung:
--snip--
java test2
Treiber gefunden
Fehler :
java.sql.SQLException: No suitable driver
--snip--
Ich habe schon mal versucht direkt aus der Klasse datenbank.class mir den Inhalt einer Testdatenbank ausgeben zu lassen, aber leider Fehlanzeige.
---- Auszugnummer 2 ----
Hier der jetzige Code der datenbank.class
--snip--
import java.sql.*;
public class datenbank
{
// Attribute
public String datenbankTyp;
public String datenbankName;
public String datenbankHost;
public int datenbankPort;
public String datenbankUser;
public String datenbankPassword;
// Konstruktoren
// nur der Datenbanktyp wird übergeben
public datenbank (String datenbankTyp, String datenbankName)
throws SQLException {
this.datenbankTyp = datenbankTyp;
this.datenbankTyp = datenbankName;
this.datenbankHost = "127.0.0.1";
this.datenbankPort = 3306;
this.datenbankUser = "root";
this.datenbankPassword = "";
datenbankTreiberSuche(datenbankTyp);
Connection connection;
connection = DriverManager.getConnection("jdbc:"+this.datenbankTyp+":/ /"+this.datenbankHost+"/"+this.datenbankName);
Statement statement = connection.createStatement();
}
// Datenbanktyp wird übergeben mit Host und Port
public datenbank (String datenbankTyp, String datenbankName, String datenbankHost, int datenbankPort, String datenbankUser, String datenbankPassword)
throws SQLException {
this.datenbankTyp = datenbankTyp;
this.datenbankTyp = datenbankName;
this.datenbankHost = datenbankHost;
this.datenbankPort = datenbankPort;
this.datenbankUser = datenbankUser;
this.datenbankPassword = datenbankPassword;
datenbankTreiberSuche(datenbankTyp);
Connection connection;
connection = DriverManager.getConnection("jdbc:"+this.datenbankTyp+":/ /"+this.datenbankHost+"/"+this.datenbankName);
Statement statement = connection.createStatement();
}
// Methoden
private static boolean datenbankTreiberSuche (String datenbankTreiber) {
String treiber = "";
String datenbankTyp = datenbankTreiber.toLowerCase();
if (datenbankTyp == "mysql") {treiber = "org.gjt.mm.mysql.Driver";
System.out.println("Treiber gefunden"); }
else { System.out.println("Es liegt kein passender Treiber vor!"); }
try { Class.forName(treiber); }
catch (NoClassDefFoundError e) { System.err.println(e); }
catch (ClassNotFoundException e) { System.err.println(e); }
catch (Exception e) { System.err.println(e); }
return true;
}
}
--snip--
---- Auszugnummer 3 ----
Und hier das Hauptprogramm :
import java.lang.*;
import java.sql.*;
public class test2
{
public static void main (String[] argv) {
try {
datenbank test = new datenbank("mysql","server");
} catch (SQLException e) {
System.out.println("Fehler : \n"+e);
}
}
}
Ich hoffe ihr könnt mir weiterhelfen!
MfG
BB