Trong Android, SQLiteOpenHelper là một lớp tiện ích giúp quản lý cơ sở dữ liệu SQLite cục bộ. Nó cung cấp các phương thức đơn giản hóa việc tạo, nâng cấp và quản lý cơ sở dữ liệu. Bằng cách sử dụng SQLiteOpenHelper, bạn có thể tránh phải trực tiếp thao tác với các lệnh SQL để tạo và nâng cấp cơ sở dữ liệu.

Dưới đây là hướng dẫn chi tiết về cách sử dụng SQLiteOpenHelper trong Android.

1. Tạo Lớp Mở Rộng SQLiteOpenHelper

Để sử dụng SQLiteOpenHelper, bạn cần tạo một lớp con của nó và override hai phương thức chính: onCreate()onUpgrade().

  • onCreate(): Phương thức này được gọi khi cơ sở dữ liệu được tạo lần đầu. Bạn có thể tạo các bảng trong đây.
  • onUpgrade(): Phương thức này được gọi khi cơ sở dữ liệu cần được nâng cấp (ví dụ: khi thay đổi cấu trúc bảng).

Ví dụ:

SQLiteOpenHelper

2.2 Đọc Dữ Liệu (Read)

Sử dụng phương thức query() để lấy dữ liệu từ bảng.

Cursor

2.3 Cập Nhật Dữ Liệu (Update)

Sử dụng phương thức update() để cập nhật dữ liệu.

delete()

3. Quản Lý Phiên Bản Cơ Sở Dữ Liệu

Khi bạn cần thay đổi cấu trúc cơ sở dữ liệu (ví dụ: thêm cột mới, thay đổi kiểu dữ liệu), bạn phải tăng phiên bản cơ sở dữ liệu (DATABASE_VERSION) trong SQLiteOpenHelper. Sau đó, phương thức onUpgrade() sẽ được gọi, nơi bạn có thể thực hiện thay đổi cần thiết cho cơ sở dữ liệu.

Ví dụ:

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    if (oldVersion < 2) {
        // Thêm cột mới trong phiên bản 2
        db.execSQL("ALTER TABLE " + TABLE_NAME + " ADD COLUMN phone TEXT");
    }
}

4. Kết Luận

SQLiteOpenHelper giúp quản lý cơ sở dữ liệu trong Android một cách đơn giản hơn, với khả năng tạo, nâng cấp, và thực hiện các thao tác CRUD dễ dàng. Nó giúp bạn tập trung vào xử lý dữ liệu mà không phải lo lắng quá nhiều về các lệnh SQL thuần túy.