如何使用Mysql JDBC驱动程序将Android与MySQL连接

时间:2012-06-19 16:44:12

标签: java android mysql

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

2 个答案:

答案 0 :(得分:12)

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

  • 下载驱动程序mysql-connector-java-3.0.17-ga-bin.jar
  • 将其粘贴到Android项目中的文件夹libs。
  • 单击ConfigureBuildPath->添加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版本,对于某些版本,这会产生问题。

答案 1 :(得分:6)

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

此外,此问题已在之前重复过,因此您可以查看这些解决方案。