【问题标题】:How to connect Android with MySQL using Mysql JDBC driver [duplicate]如何使用 Mysql JDBC 驱动程序将 Android 与 MySQL 连接 [重复]
【发布时间】:2012-06-21 18:16:46
【问题描述】:

我想从 MySQL 中的表中获取数据并在 TextView 中显示,但是当我尝试连接数据库时遇到了一些问题。
我正在使用适用于 Android 的 Eclipse,当我尝试从 Java Project 中的 MySQL 获取数据时它可以工作,但是当我使用 Android Project 时它不起作用。
有谁知道如何使用 MySQL JDBC 驱动程序将 MySQL 与 Android Project 连接起来?
或者给我其他建议如何将 Android 项目与 MySQL 连接?

【问题讨论】:

  • "或者给我其他建议如何将 Android Project 与 MySQL 连接?" -- 为您的 MySQL 数据库创建一个 Web 服务,并让您的 Android 应用程序与该 Web 服务进行通信。
  • 对于“创建 Web 服务”,您可以使用 Restlet。

标签: java android mysql


【解决方案1】:

如果您想从 Android 连接到 Mysql 数据库,您只需按照以下步骤操作:

  • 下载驱动mysql-connector-java-3.0.17-ga-bin.jar
  • 将其粘贴到您的 android 项目中的文件夹 libs 中。
  • 点击 ConfigureBuildPath->add jar 将 jar 包含到项目中。
  • 现在您有了驱动程序,但您还需要在 androidManifest.xml 中为 INTERNET 授予权限。
  • 使用下面的代码进行连接:

    try{
        Class.forName("com.mysql.jdbc.Driver").newInstance();
    }catch(Exception e){
        System.err.println("Cannot create connection");
    }
    try{
        connection = DriverManager.getConnection("jdbc:mysql://192.168.xx.xx:3306/dbname","root","password");
        Statement statement = connection.createStatement();
    
        String query = "SELECT column1, column2 FROM table1 WHERE column3 = ";
        query = query +"'" +variable+"'";           
        ResultSet result = statement.executeQuery(query);
    }catch(Exception e){
        System.err.println("Error");
    } 
    

建议:如果驱动程序实例没有出现任何错误,但您在连接时遇到异常,则应尝试从清单中删除 Target SDK 版本,因为某些版本会出现问题。

【讨论】:

    【解决方案2】:

    Android 默认不支持 MySQL。它有一个内置的数据库,即 SQLite。 如果您尝试远程访问 MySQL 数据库,您应该使用任何标准 Web 服务向该数据库公开接口。 例如,您可以在使用 Java/PHP 等和 MySQL 连接器编写的服务器端创建 RESTful Web 服务。 (你已经完成了!) 您的 Android 应用可以通过使用此 Web 服务生成的 URL 与此服务通信。

    同样,这个问题之前已经重复过,所以你可以检查这些解决方案。

    【讨论】:

      猜你喜欢
      • 2016-09-07
      • 2021-05-18
      • 2014-05-17
      • 1970-01-01
      • 1970-01-01
      • 2012-11-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多