Verbindung Java mit MYSQL DB


#1

Guten Tag

Ich möcht eine Verbindung mit einer Mysql Datenbank mit Java erstellen. Dafür verwende ich den Ucanacess Treiber für Java und folgenden Code:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

public class Mysql {
public static void main (String[] args)
{String ergebnis = “”;

try {
Connection conn=DriverManager.getConnection(“jdbc:mysql://samuel4.mysql.db.hostpoint.ch”, “Benutzer”, “Passwort”);
try {
ergebnis = makeDB (conn);
System.out.println(ergebnis);
}
finally {
conn.close();
}
} catch (Exception e){
System.out.println(e);
}
}
private static String makeDB(Connection conn) {
String ausgabe =“Datenbank aktualisiert”;
try {
Statement stmt = conn.createStatement();

	stmt.executeUpdate ("create table Beispiel (Nummer int , Tisch char (10), Essen char (10))");
	stmt.executeUpdate ("Insert into Accounts Values ('25', 'B42', 'Pommes' )");
	stmt.close ();
	System.out.println("Datenbank aktualisiert");

}
catch (Exception e){
}
return ausgabe;

}

}

Nun habe ich zwar eine Verbindung, denn wenn ich das Passwort ändere tritt ein Fehler auf und sonst nicht. Jedoch ist das Problem das ich wenn ich beim Server im phpmyadmin nachschaue keine Datenbank erstellt wurde.

Kann mir da jemand weiterhelfen?

Besten Dank

Gruss Selmau


#2

Ja, wenn du den Code ordentlich formatierst und die Fehlermeldung angibst bzw. welcher Fehler auftritt.


#3

Hier noch einmal der Code:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;




public class Mysql {
public static void main (String[] args)
{String ergebnis ="";

try {
Connection conn=DriverManager.getConnection("jdbc:mysql://samuel4.mysql.db.hostpoint.ch",   "Benutzer",        "Passwort");

try {
ergebnis = makeDB(conn);
System.out.println(ergebnis) ;

/*ergebnis = auslesen(conn);
System.out.print(ergebnis);*/




 }
finally {

conn.close();
}
} catch (Exception e){
System.out.println(e);
}
}

public static String makeDB(Connection conn) {
String ausgabe = "";
try {
	Statement stmt = conn.createStatement();
	
	stmt.executeUpdate ("create table Beispiel (Nummer int , Tisch char (10), Essen char (10))");
	stmt.executeUpdate ("Insert into Accounts Values ('25', 'B42', 'Pommes' )");
	stmt.close ();
	ausgabe +=  "\nDatenbank initialisiert\n" ;

}
catch (Exception e){
}
return ausgabe;
    }



public static String auslesen (Connection conn){
String ausgabe = "";
try {
	Statement stmt = conn.createStatement();
	ResultSet Tabelle = stmt.executeQuery("Select Essen From Beispiel");;
	ausgabe += "\n\nBeispiel:\n ( Nummer Tisch Essen )";
	
	while (Tabelle.next()){
		ausgabe += "\n" + Tabelle.getString("Nummer") + " " + Tabelle.getString("Tisch") + " " +          
  Tabelle.getString("Essen");
	}
	Tabelle.close();
	stmt.close();
}
catch (Exception e){
}
return ausgabe;}
    }

Ich erhalte dabei keine Fehlermeldung. die Anmeldung am Server funktioniert. Wenn ich das Passwort nämlich absichtlich falsch hinterlege, dann bekomme ich eine Fehlermeldung, ansonsten jedoch nicht, was meiner Meinung nach bedeutet, dass die Verbindung steht.

Wenn ich jedoch im phpmyadmin nachschaue wurde keine Tabelle erstellt.


#5

Hallo,

Du versucht dich mit dem DB-Server von Hostpoint zu verbinden.
Hast du externe DB-Zugriffe schon aktiviert?
FAQ: support.hostpoint.ch/de/01-Produkte/Webhosting/Wie_verbinde_ich_auf_meine_Datenbank

Gruss fishi


#6

Hallo fishi

Ja das habe ich aktiviert indem ich bei den Benutzern ein % Zeichen hinzugefügt habe. Meiner Meinung nach kann es nur etwas mit dem Code des conn.createStatement zu tun haben, dass da etwas nicht funktioniert oder dass etwas mit dem Treiber nicht geht, jedoch ist immer noch komisch, dass die Verbindung zur Datenbank hergestellt werden kann.

Gruss Selmau


#7

Hallo Samuel,

jdbc:mysql://samuel4.mysql.db.hostpoint.ch:3306

  • Ergänzen

import java.sql.SQLException;

  • Importieren

Einfügen vor Verbindungsaufbau zu MySQL
Class.forName(“com.mysql.jdbc.Driver”)

conn=DriverManager.getConnection(“jdbc:mysql://samuel4.mysql.db.hostpoint.ch”, “Benutzer”,

Evtl. Helfen dir folgende Links weiter:

dev.mysql.com/doc/connector-j/5.1/en/connector-j-usagenotes-connect-drivermanager.html

Leider kenne ich mit Java überhaupt nicht aus.
Gruss