Hàm sqlite_version()
Trả về phiên bản thư viện SQLite đang chạy trên thiết bị (ví dụ: "3.39.4"). Hữu ích để debug, kiểm tra tính năng hỗ trợ.
DatabaseHelper.java
public ArrayList<String> getAllContacts() {
ArrayList<String> list = new ArrayList<>();
SQLiteDatabase db = getReadableDatabase();
// sqlite_version() không cần tên bảng, nhưng FROM table cần cho cursor
Cursor cursor = db.rawQuery(
"SELECT sqlite_version() as version FROM " + TABLE_NAME + " LIMIT 1", null);
if (cursor.moveToFirst()) {
String version = cursor.getString(0);
list.add("SQLite Version: " + version);
}
cursor.close();
return list;
}
Cách khác: Không cần bảng
// Truy vấn trực tiếp, không cần bảng
Cursor cursor = db.rawQuery("SELECT sqlite_version()", null);
if (cursor.moveToFirst()) {
String version = cursor.getString(0);
Log.d("SQLite", "Version: " + version);
}
cursor.close();
Kiểm tra phiên bản trong code Java
// Cách 1: SQLiteDatabase
String version = SQLiteDatabase.sqliteVersion(); // Static method
Log.d("SQLite", "Version: " + version);
// Cách 2: System property (API 11+)
String version2 = System.getProperty("sqlite.version");
Kết quả

Hiển thị phiên bản SQLite (ví dụ: 3.39.4) lặp lại cho mỗi bản ghi (do SELECT từ bảng).
Tính năng theo phiên bản SQLite
| Phiên bản | Tính năng mới |
|---|---|
| 3.38.0 | ->> JSON operator, MATERIALIZED CTE |
| 3.35.0 | Math functions (sin, cos, sqrt...) |
| 3.31.0 | Generated columns, window functions cải tiến |
| 3.25.0 | Window functions (ROW_NUMBER, RANK...) |
| 3.24.0 | UPSERT (INSERT ON CONFLICT) |
| 3.15.0 | JSON1 extension built-in |
Lưu ý Android
- Phiên bản SQLite tùy thuộc vào Android OS version, không thể cập nhật riêng.
- Android 7.0 (API 24): SQLite 3.18+
- Android 10 (API 29): SQLite 3.28+
- Android 14 (API 34): SQLite 3.43+
- Dùng Room library để trừu tượng hóa và dùng SQLite mới hơn qua bundled artifact.