Ich habe ein Problem beim Herstellen einer Verbindung zu meiner MySql-Datenbank über Java/Android. Ich habe eine Datenbankdatei (MyDatabase.db) auf einem Windows7-Computer in meinem Netzwerk. Wenn ich von einem anderen Windows7 Computer aus arbeite (die Datei ist über den Windows Explorer zugänglich und ich kann über SQLDatabaseExplorer Änderungen an der Datenbank vornehmen) funktioniert folgender Code aus Eclipse, aber wenn ich meine Anwendung auf meinem Galaxy Tab installiere, wird der "DriverManager. getConnection() "gibt null zurück.NullPointerException in "DriverManager.getConnection" -Methode
try {
String url = "http://192.168.178.21/Users/test/userdata/Database/MyDatabase.db";
Class.forName ("com.mysql.jdbc.Driver");
Connection connection = DriverManager.getConnection (url);
System.out.println ("Database connection established");
} catch (SQLException e) {
Log.d("SQLException", "e.toString()");
}
Die SQLException in LogCat angemeldet ist:
java.sql.SQLException: path to '//192.168.178.21/Users/test/userdata/Database/MyDatabase.db': '/192.168.178.21' does not exist
Ich denke, mein Problem in der URL-Zeichenfolge liegt ...? Aber ich habe nicht herausgefunden, wie ich es ändern kann, damit die Verbindung hergestellt werden kann.
Vielen Dank für jede Hilfe, Tim
EDIT: Vielen Dank für Ihre Hilfe bisher! Ich habe die Frage gestern aus meinem Kopf geschrieben, ohne auf meinen Code zu schauen ... Es tut mir leid, weil ich eine Menge Dinge durcheinander gebracht habe ... Es ist keine MySql-Datenbank, sondern eine SQLite-Datenbank ... Aber ich denke, das ändert nicht viel an der Programmierung. Ich benutze einen jdbc sqlite Treiber. Beim Start der folgenden Zeilen in einem Java-Eclipse-Projekt funktioniert alles einwandfrei und die Verbindung kann hergestellt werden. Aber auf meinem Gerät habe ich noch den Nullpointer ...
Gestern habe ich meinen Code geändert, damit er zu Ihren Ratschlägen passt. Aber das Problem besteht immer noch ... Um sicher zu sein, dass es nicht mit einigen Rechten oder Netzwerkeinstellungen zu tun hat, habe ich die DB-Datei auf mein Android-Gerät kopiert und versucht, mit den folgenden Codezeilen direkt zu verbinden:
Aber auch hier wirft getConnection einen NullPointer und ich weiß nicht warum ... Hatte jemand eine Vermutung, warum die Verbindung aus Eclipse aufgebaut werden kann und auf meinem Androidgerät scheitert? Kann ich einen falschen Treiber haben, funktioniert das nicht vom Gerät aus, sondern von Eclipse ...?
Vielen Dank im Voraus!
möglich Duplikat von [Wie Daten mit einem ServerDatabase syncronize?] (Http://stackoverflow.com/questions/9998519/how-to-syncronize-data-with-a-serverdatabase) – Snicolas
Verwendung 'getConnection (URL, Benutzername, Passwort) 'anstelle von' getConnection (url); ' –