Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/184.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 找不到类';SQLFeatureNotSupportedException';_Android_Sql Server_Eclipse - Fatal编程技术网

Android 找不到类';SQLFeatureNotSupportedException';

Android 找不到类';SQLFeatureNotSupportedException';,android,sql-server,eclipse,Android,Sql Server,Eclipse,说明 在调试模式下,当此Android代码处理该行时,使用Eclipse: con=DriverManager.getConnection(connectionUrl); 它会在Logcat中产生如下错误: 错误 Could not find class 'java.sql.SQLFeatureNotSupportedException', referenced from method com.microsoft.sqlserver.jdbc.SQLServerConnection.create

说明 在调试模式下,当此Android代码处理该行时,使用Eclipse: con=DriverManager.getConnection(connectionUrl); 它会在Logcat中产生如下错误:

错误

Could not find class 'java.sql.SQLFeatureNotSupportedException', referenced from method com.microsoft.sqlserver.jdbc.SQLServerConnection.createArrayOf
02-09 08:15:46.325: W/dalvikvm(367): VFY: unable to resolve new-instance 828 (Ljava/sql/SQLFeatureNotSupportedException;) in Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
02-09 08:15:46.325: D/dalvikvm(367): VFY: replacing opcode 0x22 at 0x0003
02-09 08:15:46.325: D/dalvikvm(367): VFY: dead code 0x0005-000e in Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;.createArrayOf (Ljava/lang/String;[Ljava/lang/Object;)Ljava/sql/Array;
02-09 08:15:46.385: I/dalvikvm(367): Failed resolving Lcom/microsoft/sqlserver/jdbc/SQLServerNClob; interface 818 'Ljava/sql/NClob;'
02-09 08:15:46.385: W/dalvikvm(367): Link of class 'Lcom/microsoft/sqlserver/jdbc/SQLServerNClob;' failed
02-09 08:15:46.395: E/dalvikvm(367): Could not find class 'com.microsoft.sqlserver.jdbc.SQLServerNClob', referenced from method com.microsoft.sqlserver.jdbc.SQLServerConnection.createNClob
02-09 08:15:46.395: W/dalvikvm(367): VFY: unable to resolve new-instance 563 (Lcom/microsoft/sqlserver/jdbc/SQLServerNClob;) in Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
代码 这只是本课程的一部分:

import java.sql.*;

public class ConnectURL {

    public static void main() {

        // Create a variable for the connection string.
        String connectionUrl = "jdbc:sqlserver://192.168.1.20:1433;" +
            "databaseName=BD;user=sa;password=pass1;integratedSecurity=true;";

        // Declare the JDBC objects.
        Connection con = null;
        Statement stmt = null;
        ResultSet rs = null;

            try {
                // Establish the connection.
                Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
                con = DriverManager.getConnection(connectionUrl);
....
注 我在一个文件夹中下载了Microsoft sqlserver jdbc 4.0,在这个项目中,有一个Java构建路径与此路径。

仅在API级别9之后可用


我猜您的目标是降低API级别。

是的,您是对的。现在我使用了API>8,没有显示这个错误。但是现在出现了一个新错误:01-29 11:54:20.387:E/dalvikvm(1137):找不到从方法com.microsoft.sqlserver.jdbc.SQLServerConnection.poolCloseEventNotify 01-29 11:54:20.387:W/dalvikvm(1137):VFY:无法解析913的实例(Ljavax/sql/XAConnection;)在Lcom/microsoft/sqlserver/jdbc/SQLServerConnection中;如果问题解决了,请接受(如果有帮助,请投票)。关于XAConnection:这个类不是Android API的一部分。我想您需要它是因为您的事务管理器配置为使用多个数据库(或外部资源)。如果您真的需要该功能:您必须找到不依赖“javax.sql.XAConnection”的驱动程序的另一个版本。如果你只有一个DB,这个类不应该是必需的,所以我建议你更深入地调查你的驱动程序可能存在的配置问题。对不起,当你写“请接受…”时,你指的是按下下面的“是”按钮,其中显示“这是帖子吗…”。在这种情况下,我接受了它。所以,关于这个问题,我只有一个外部机器中的远程数据库,但是这个类是必需的,看起来是这样。此外,我还看到了这个错误的另一个类似问题,它指示安装JEE,所以我必须这样做,并且我已经能够添加import javax.sql.*;但问题依然存在。