Android 应用程序中 JDBC 没有合适的驱动程序
No Suitable Driver for JDBC in Android App
我已经下载了 jar JDBC 文件并成功添加到我的 app/src/lib 文件中。
此外,我还尝试使用 JTDS-JDBC 库,但我得到了完全相同的异常:
Network exception can't connect to 127.0.0.1/1433 ECOREFUSED
java.sql.SQLException: No suitable driver
对于Exception #1
我查了一些帖子说抛出这个异常的主要原因是内存不足,于是我把SQLServer的内存增加到4GB也没有解决我的问题。
对于这两个库,我都尝试建立连接以实现对我的 SQLServer 数据库的插入,唯一的区别是对于 JTDS-JDBC 我使用了以下内容:
Class.forName("net.sourceforge.jtds.jdbc.Driver"))
我是运行以下代码:
try {
/*Declare the JDBC objects.*/
Connection con = null;
Statement stmt = null;
ResultSet rs = null;
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String constring = "jdbc:sqlserver://localhost:1433;databaseName=bumpit;integratedSecurity=true;";
con = DriverManager.getConnection(constring);
/*Create and execute an SQL statement.*/
stmt = con.createStatement();
String SQL = "INSERT INTO BumpItUsers (name,address,mobile,password) VALUES ('" + name + "','" + address + "','" + address + "','" + password + "')";
rs = stmt.executeQuery(SQL);
con.close();
return true;
} catch (Exception e) {
e.printStackTrace();
return false;
}
}
任何解决方案都将被接受!
首先,localhost
,从Android设备的角度来看,是Android设备。这就是 localhost
在任何地方的工作方式:它指的是代码在其上的机器 运行ning。 SQL 服务器未在 Android 上 运行。您需要更改代码以引用机器 运行ning SQL 服务器的实际 IP 地址或域名。
其次,出于可靠性和安全原因,很少有开发人员在 Android 上使用 JDBC。
我已经下载了 jar JDBC 文件并成功添加到我的 app/src/lib 文件中。 此外,我还尝试使用 JTDS-JDBC 库,但我得到了完全相同的异常:
Network exception can't connect to 127.0.0.1/1433 ECOREFUSED
java.sql.SQLException: No suitable driver
对于Exception #1
我查了一些帖子说抛出这个异常的主要原因是内存不足,于是我把SQLServer的内存增加到4GB也没有解决我的问题。
对于这两个库,我都尝试建立连接以实现对我的 SQLServer 数据库的插入,唯一的区别是对于 JTDS-JDBC 我使用了以下内容:
Class.forName("net.sourceforge.jtds.jdbc.Driver"))
我是运行以下代码:
try {
/*Declare the JDBC objects.*/
Connection con = null;
Statement stmt = null;
ResultSet rs = null;
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String constring = "jdbc:sqlserver://localhost:1433;databaseName=bumpit;integratedSecurity=true;";
con = DriverManager.getConnection(constring);
/*Create and execute an SQL statement.*/
stmt = con.createStatement();
String SQL = "INSERT INTO BumpItUsers (name,address,mobile,password) VALUES ('" + name + "','" + address + "','" + address + "','" + password + "')";
rs = stmt.executeQuery(SQL);
con.close();
return true;
} catch (Exception e) {
e.printStackTrace();
return false;
}
}
任何解决方案都将被接受!
首先,localhost
,从Android设备的角度来看,是Android设备。这就是 localhost
在任何地方的工作方式:它指的是代码在其上的机器 运行ning。 SQL 服务器未在 Android 上 运行。您需要更改代码以引用机器 运行ning SQL 服务器的实际 IP 地址或域名。
其次,出于可靠性和安全原因,很少有开发人员在 Android 上使用 JDBC。