【问题标题】:Android MySQL Exception ErrorAndroid MySQL 异常错误
【发布时间】:2012-07-15 21:29:19
【问题描述】:

我正在尝试对 android 应用程序中的数据库执行简单查询。但是每次执行该方法时程序都会崩溃。有人对如何解决这个问题有任何建议吗?

这是错误日志消息:

07-15 17:20:23.623:错误/AndroidRuntime(544):未捕获的处理程序: 由于未捕获的异常07-15 17:20:23.643,线程主退出: 错误/AndroidRuntime(544):java.lang.VerifyError: com.mysql.jdbc.MysqlIO 07-15 17:20:23.643: 错误/AndroidRuntime(544): 在 com.mysql.jdbc.Connection.createNewIO(Connection.java:2771) 07-15 17:20:23.643:错误/AndroidRuntime(544):在 com.mysql.jdbc.Connection.(Connection.java:1555) 07-15 17:20:23.643:错误/AndroidRuntime(544):在 com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:285) 07-15 17:20:23.643: 错误/AndroidRuntime(544): 在 java.sql.DriverManager.getConnection(DriverManager.java:191) 07-15 17:20:23.643:错误/AndroidRuntime(544):在 java.sql.DriverManager.getConnection(DriverManager.java:226)

这是我的连接:

String url = "jdbc:mysql://192.126.0.1:3306/";
        String db = "db";
        String driver = "com.mysql.jdbc.Driver";
        String table = "table";
        Connection conn = null;

        try {
            Class.forName(driver);
            try {
                conn = DriverManager.getConnection(url+db,"root","");

                conn.close();

            } catch (SQLException s) {
                s.printStackTrace();
            }
        } catch (ClassNotFoundException cnfe){
            System.out.println("ERROR");
        }

【问题讨论】:

    标签: android jdbc


    【解决方案1】:

    您在编译时环境中有不同版本的 JDBC 驱动程序,在运行时环境中有不同版本。扫描您的磁盘和设备以查找mysql-connector*.jar,并确保您周围只有一个。

    【讨论】:

    • 我正在使用模拟器。如何扫描运行时环境?
    • @scriptdiddy - 使用busybox find -name 'mysql*jar' 命令。或另见答案here
    【解决方案2】:

    我也在开发一个带有在线 mysql 数据库的 android 应用程序。我认为您不能像在 java 应用程序中那样直接连接它。您应该编写 php 文件并将它们放在服务器上。他们将连接到数据库并向您发送 JSON 格式的数据...

    【讨论】:

      猜你喜欢
      • 2013-06-04
      • 1970-01-01
      • 1970-01-01
      • 2012-11-25
      • 2011-03-11
      • 2015-12-29
      • 2013-02-20
      • 2016-01-18
      相关资源
      最近更新 更多