我尝试将Android应用程序中的值发布到远程MySQL数据库中。 数据库表看起来像 this
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();
}
此代码我收到以下错误消息:
java.lang.ClassNotFoundException:com.mysql.jdbc.Driver
错误消息显示,未找到适合此操作的驱动程序。
答案 0 :(得分:0)
在构建文件中添加以下代码。
dependencies {
compile group: 'mysql', name: 'mysql-connector-java', version: '6.0.5'
}
答案 1 :(得分:-1)
您必须将mysql-connector.jar放在应用程序类路径中!该应用程序没有找到该类,因为它不存在。
您可以下载here
修改1
尝试使用此类内容将其添加到Gradle:
dependencies {
compile 'mysql:mysql-connector-java:5.1.+'
}