MySQL avec android

Fermé
stainz42 - 11 mai 2011 à 03:17
 Lycaste - 3 juin 2013 à 13:42
Bonjour,
Je développe actuellement une application sous android, et je dois faire des requêtes sur une base de donnée.
Auriez-vous un tuyau à me passer s'il vous plait ?
La page d'accueil de l'appli est un formulaire a remplir et on appuye sur connect. Et la elle est sensée se connecter a une BDD et rapporter les informations demandées.

A voir également:

5 réponses

Hum, j'imagine qu'il est un peu tard pour répondre à ton problème, mais voici quelques pistes, en espérant que cela puisse t'aider ou aider d'autres programmeurs ayant le même problème :

1) modifier AndroidManifest.xml pour autoriser l'application à accéder à Internet. Le champs xml à ajouter est le suivant : <uses-permission android:name="android.permission.INTERNET" />

2) pour le reste, il suffit de coder comme tout programme Java. Voici un petit exemple de code :

2.1) Code pour créer une connexion à MySql (pré-requis : installer les driver JDBC pour MySql, la manière de faire dépend de ton IDE, sinon ajouter un -jar vers le driver si tu programme "à la main" sans l'aide d'un IDE si je ne me trompe pas) :

Class.forName("com.mysql.jdbc.Driver");
Properties props = new Properties();
props.put("user", ""); props.put("password", ""); props.put("charSet", "UTF-8");
java.sql.Connection con = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/" + nomBase, props);

Evidement, il faudra mettre les bonnes valeurs pour "user", "password" ainsi que pour l'adresse IP. Et éventuelleemnt le charset !

2.2) Code pour exécuter une requete SELECT :

Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM Table");
while (rs.next()){ //on parcourt chaque ligne de notre résultat
int no = rs.getInt("champNo");
String libelle = rs.getString("Libelle");
//...
}
stmt.close();

2.2bis) Code pour exécuter une requete sans résultat (genre INSERT, DELETE, CREATE...) :

Statement stmt = con.createStatement();
ResultSet rs = stmt.executeUpdate("DELETE FROM Table WHERE champNo = 1");
stmt.close();


ATTENTION, il faut également gérer les exceptions suivante (pour les points 2.1, 2.2 et 2.2bis):
- ClassNotFoundException : Erreur de driver mySQL (il ne le trouve pas)
- SQLException : Erreur dans l'accès au SGBD ou dans l'exécution de la requête

Avec ça, il ne devrait plus y avoir de problème !

Bon courage!
3
Merci c'est exactement ce que je cherchais.
Tous les exemplent utilisent php et un accès http.
0
Je up le sujet, j'ai besoin de l'algorithme svp !
1
sakoba2010 Messages postés 157 Date d'inscription lundi 7 février 2011 Statut Membre Dernière intervention 24 juillet 2013 15
11 mai 2011 à 16:47
Vous pouvez vous connecter à une base de données SQLite intégré dans Android, voici un exemp:
http://sakoba.byethost13.com/...
1
Merci d'avoir répondu, mais je souhaite me connecter à une base de donnée située sur un serveur, or SQLite semble être une base de donnée locale.
1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
up
1