2016-11-02 4 views
1

Ich versuche, Werte von Android-Anwendung in eine entfernte MySQL-Datenbank zu buchen. Datenbanktabelle sieht wie aus.Einfügen von Variablen in MySQL-Datenbank

  try { 
        Class.forName("com.mysql.jdbc.Driver"); 
       } catch (ClassNotFoundException e) { 
        e.printStackTrace(); 
       } 
       Connection conn = null; 
       try { 
        conn = DriverManager.getConnection("jdbc:mysql://myhost:3306/mydb", 
          "root", "root"); 
       } catch (SQLException e) { 
        e.printStackTrace(); 
       } 
       System.out.println("Connected to Database"); 
       Statement stmt1 = null; 
       try { 
        stmt1 = conn.createStatement(); 
       } catch (SQLException e) { 
        e.printStackTrace(); 
       } 
       ResultSet rs1=null; 
       PreparedStatement sql = null; 
       try { 
        sql = conn.prepareStatement("INSERT INTO `mytable`(studentid,classid,startsig,start,end,endsig) VALUES (?, ?, ?, ?, ?, ?)"); 
       } catch (SQLException e) { 
        e.printStackTrace(); 
       } 

       //set values before sending 
       try { 
       sql.setString(1, studentid); 
       sql.setString(2, classid); 
       sql.setString(3, startsig); 
       sql.setString(4, start); 
       sql.setString(5, end); 
       sql.setString(5, endsig); 
       } catch (SQLException e) { 
        e.printStackTrace(); 
       } 

       System.out.println("sql:"+sql); 
       try { 
        stmt1.executeUpdate(String.valueOf(sql)); 
       } catch (SQLException e) { 
        e.printStackTrace(); 
       } 

Ich habe bekam Fehlermeldung unten für diesen Code:

java.lang.ClassNotFoundException: com.mysql.jdbc.Driver

Fehlermeldung sagt, dass kein passender Treiber wurde für diese Operation gefunden.

+0

wo läuft das? Was ist dein Klassenpfad? Was ist darin? Ist ein Servlet-Container beteiligt? Welche Version von jdbc? – Drew

+0

Welche Version von JDBC sollte ich verwenden? – appkovacs

+0

Nicht viel von einer Antwort oder Details Ihrer Umgebung. Viel Glück: p – Drew

Antwort

-1

Sie müssen die mysql-connector.jar in den Klassenpfad Ihrer Anwendung einfügen! Die Anwendung hat die Klasse nicht gefunden, weil sie nicht vorhanden ist.

Sie herunterladen können es here

Edit 1

so etwas wie dieses Probieren Sie es in Ihrem Gradle hinzuzufügen:

dependencies { 
     compile 'mysql:mysql-connector-java:5.1.+' 
} 
+0

Könnten Sie bitte erklären, wie kann ich diese Abhängigkeit mit der Verwendung von Gradle hinzufügen? – appkovacs

+0

@appkovacs, Sehen Sie, ob meine Bearbeitung 1 für Sie passt. Besosdes, könntest du hier deine Datei zum Erstellen von Dateien posten? – BrunoDM

+0

Ich habe folgende Fehlermeldung erhalten: Ausführung fehlgeschlagen für Task ': app: preDexDebug'. – appkovacs

0

Fügen Sie den folgenden Code in Sie Datei erstellen.

dependencies { 
    compile group: 'mysql', name: 'mysql-connector-java', version: '6.0.5' 
} 
+0

Es hat nicht funktioniert und ich fand, dass diese Methode veraltet ist, also habe ich eine andere Lösung implementiert. – appkovacs

Verwandte Themen