简体   繁体   中英

How to connect Android with MySQL using Mysql JDBC driver

I want to get data from table in MySQL and to show it in TextView, but I have some problems when I try to connect with database.
I'm using Eclipse for Android, and when I try to get data from MySQL in Java Project it works, but when I use Android Project it doesn't work.
Does anyone know how can I connect MySQL with Android Project using MySQL JDBC driver?
Or to give me other advice how to connect Android Project with MySQL?

If you want to connect to Mysql database from Android you just need to follow these steps:

  • Download the driver mysql-connector-java-3.0.17-ga-bin.jar
  • Paste it to the folder libs in your android project.
  • Click ConfigureBuildPath->add jar to include the jar to the project.
  • Now you have the driver, but you also need to give permissions in the androidManifest.xml for INTERNET.
  • Use the next code for connecting:

     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"); } 

Advice: If the instance of the drivers doesn't give any errors but you get an exception with the connection you should try to remove the Target SDK version from your manifest, as for some versions this gives problems.

Android by default does not support MySQL. It has an in-built database ie SQLite. If you are trying to access MySQL database remotely, you should expose interface to this database with any standard web service. Eg you could create RESTful Web Service on Server Side which is written using Java/PHP etc. and MySQL Connector. (Which you have already done!) And your Android App could talk to this service with the URL generated using this web service.

Again, this question has been repeated previously, so you can check those solutions.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM