Sequence 3 Android

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 6

Initiation au développement mobile (ANDROID)

Introduction à SQLite sur Android

M. NDIAYE – M. KANOUTE – Mme NGOM

1
Introduction
SQLite est une base de données relationnelle embarquée, légère et très efficace pour les
applications mobiles. Android inclut un support intégré pour SQLite, ce qui permet de
stocker des données structurées dans des bases de données locales.

Prérequis
• Android Studio installé.

• Connaissance de base de Java et Android.

Étape 1 : Créer un nouveau projet Android


1. Ouvrez Android Studio.

2. Créez un nouveau projet avec une Activity vide.

3. Configurez les détails du projet comme le nom, le domaine de l’entreprise, etc.

Étape 2 : Créer une classe pour gérer la base de don-


nées
Nous allons créer une classe qui étend SQLiteOpenHelper. Cette classe nous permettra
de créer, mettre à jour et gérer la base de données.

package com.example.myapp;

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;

public class DatabaseHelper extends SQLiteOpenHelper {

private static final String DATABASE_NAME = "mydatabase.db";


private static final int DATABASE_VERSION = 1;

// Table and columns


private static final String TABLE_NAME = "mytable";
private static final String COLUMN_ID = "_id";
private static final String COLUMN_NAME = "name";
private static final String COLUMN_AGE = "age";

// SQL statement to create the table


private static final String TABLE_CREATE =
"CREATE TABLE " + TABLE_NAME + " (" +
COLUMN_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " +

2
COLUMN_NAME + " TEXT, " +
COLUMN_AGE + " INTEGER);";

public DatabaseHelper(Context context) {


super(context, DATABASE_NAME, null, DATABASE_VERSION);
}

@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL(TABLE_CREATE);
}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS " + TABLE_NAME);
onCreate(db);
}
}

Étape 3 : Insérer des données dans la base de données


Pour insérer des données, nous allons utiliser la méthode getWritableDatabase() de
SQLiteOpenHelper pour obtenir une instance de la base de données en mode écriture,
puis utiliser ContentValues pour insérer les données.

package com.example.myapp;

import android.content.ContentValues;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

DatabaseHelper dbHelper;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

dbHelper = new DatabaseHelper(this);

// Insert sample data


insertData("John Doe", 25);
insertData("Jane Smith", 30);
}

3
private void insertData(String name, int age) {
SQLiteDatabase db = dbHelper.getWritableDatabase();
ContentValues values = new ContentValues();
values.put("name", name);
values.put("age", age);

db.insert("mytable", null, values);


}
}

Étape 4 : Lire des données à partir de la base de


données
Pour lire des données, nous allons utiliser la méthode getReadableDatabase() de SQLiteOpenHelper
pour obtenir une instance de la base de données en mode lecture, puis utiliser Cursor
pour parcourir les résultats.
package com.example.myapp;

import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.util.Log;
import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

DatabaseHelper dbHelper;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

dbHelper = new DatabaseHelper(this);

// Insert sample data


insertData("John Doe", 25);
insertData("Jane Smith", 30);

// Read data
readData();
}

private void insertData(String name, int age) {


SQLiteDatabase db = dbHelper.getWritableDatabase();
ContentValues values = new ContentValues();
values.put("name", name);

4
values.put("age", age);

db.insert("mytable", null, values);


}

private void readData() {


SQLiteDatabase db = dbHelper.getReadableDatabase();
Cursor cursor = db.query("mytable", new String[]{"_id", "name", "age"}, null,

while (cursor.moveToNext()) {
int id = cursor.getInt(cursor.getColumnIndexOrThrow("_id"));
String name = cursor.getString(cursor.getColumnIndexOrThrow("name"));
int age = cursor.getInt(cursor.getColumnIndexOrThrow("age"));
Log.d("DB", "ID: " + id + ", Name: " + name + ", Age: " + age);
}

cursor.close();
}
}

Étape 5 : Mettre à jour et supprimer des données


Pour mettre à jour des données, nous utiliserons la méthode update de SQLiteDatabase.
Pour supprimer des données, nous utiliserons la méthode delete.

private void updateData(int id, String newName, int newAge) {


SQLiteDatabase db = dbHelper.getWritableDatabase();
ContentValues values = new ContentValues();
values.put("name", newName);
values.put("age", newAge);

String selection = "_id = ?";


String[] selectionArgs = { String.valueOf(id) };

db.update("mytable", values, selection, selectionArgs);


}

private void deleteData(int id) {


SQLiteDatabase db = dbHelper.getWritableDatabase();
String selection = "_id = ?";
String[] selectionArgs = { String.valueOf(id) };

db.delete("mytable", selection, selectionArgs);


}

5
Conclusion
Vous avez maintenant un guide complet pour utiliser SQLite sur Android avec Java.
Vous pouvez créer, lire, mettre à jour et supprimer des données dans une base de données
SQLite, ce qui vous permet de gérer efficacement les données locales dans votre application
Android.

Vous aimerez peut-être aussi