Sqlite

androidx.sqlite kitaplığı soyut arayüzlerin yanı sıra SQLite'a erişen kendi kitaplıklarınızı oluşturmak için kullanılabilecek temel uygulamaları içerir.

SQLite'in tüm gücünden yararlanırken daha güçlü veritabanı erişimi sağlamak için SQLite üzerinde bir soyutlama katmanı sağlayan Room kitaplığını kullanmayı düşünebilirsiniz.

Son Güncelleme Kararlı Sürüm Sürüm Adayı Beta Sürümü Alfa Sürümü
30 Ekim 2024 2.4.0 - - 2.5.0-alfa11

Bağımlılıkları bildirme

SQLite bağımlılığı eklemek için projenize Google Maven deposunu eklemeniz gerekir. Daha fazla bilgi için Google'ın Maven deposunu inceleyin.

Uygulamanız veya modülünün build.gradle dosyasına ihtiyaç duyduğunuz yapılar için bağımlılıkları ekleyin:

Eski

dependencies {
    def sqlite_version = "2.4.0"

    // Java language implementation
    implementation "androidx.sqlite:sqlite:$sqlite_version"

    // Kotlin
    implementation "androidx.sqlite:sqlite-ktx:$sqlite_version"

    // Implementation of the AndroidX SQLite interfaces via the Android framework APIs.
    implementation "androidx.sqlite:sqlite-framework:$sqlite_version"
}

Kotlin

dependencies {
    val sqlite_version = "2.4.0"

    // Java language implementation
    implementation("androidx.sqlite:sqlite:$sqlite_version")

    // Kotlin
    implementation("androidx.sqlite:sqlite-ktx:$sqlite_version")

    // Implementation of the AndroidX SQLite interfaces via the Android framework APIs.
    implementation("androidx.sqlite:sqlite-framework:$sqlite_version")
}

Bağımlılıklar hakkında daha fazla bilgi için Derleme bağımlılıkları ekleme başlıklı makaleyi inceleyin.

Geri bildirim

Geri bildiriminiz Jetpack'in iyileştirilmesine yardımcı olur. Yeni sorunlar keşfederseniz veya bu kitaplığı iyileştirmek için fikirleriniz varsa lütfen bize bildirin. Yeni bir kitaplık oluşturmadan önce lütfen bu kitaplıktaki mevcut sorunlara göz atın. Yıldız düğmesini tıklayarak mevcut bir soruna oy verebilirsiniz.

Yeni sorun oluşturma

Daha fazla bilgi için Sorun İzleyici belgelerine bakın.

Sürüm 2.5

2.5.0-alpha11 sürümü

30 Ekim 2024

androidx.sqlite:sqlite-*:2.5.0-alpha11 yayınlanır. 2.5.0-alpha11 sürümü bu taahhütleri içerir.

Sürüm 2.5.0-alpha10

16 Ekim 2024

androidx.sqlite:sqlite-*:2.5.0-alpha10 yayınlanır. 2.5.0-alpha10 sürümü bu taahhütleri içerir.

API Değişiklikleri

  • Bir sütunun veri türünü almak için çeşitli SQLITE_DATA_* sonuç sabitleriyle birlikte SQLiteStatement.getColumnType() ekleyin. (I1985c, b/369636251)

Sürüm 2.5.0-alpha09

2 Ekim 2024

androidx.sqlite:sqlite-*:2.5.0-alpha09 yayınlanır. 2.5.0-alpha09 sürümü bu taahhütleri içerir.

Sürüm 2.5.0-alpha08

18 Eylül 2024

androidx.sqlite:sqlite-*:2.5.0-alpha08 yayınlanır. 2.5.0-alpha08 sürümü bu taahhütleri içerir.

Sürüm 2.5.0-alpha07

21 Ağustos 2024

androidx.sqlite:sqlite-*:2.5.0-alpha07 yayınlandı. 2.5.0-alpha07 sürümü bu taahhütleri içerir.

Yeni Özellikler

  • JVM / masaüstü hedeflerinde Linux ARM 64 için destek eklendi. (b/358045505)

Sürüm 2.5.0-alpha06

7 Ağustos 2024

androidx.sqlite:sqlite-*:2.5.0-alpha06 yayınlandı. 2.5.0-alpha06 sürümü bu taahhütleri içerir.

Yeni Özellikler

Sürüm 2.5.0-alpha05

10 Temmuz 2024

androidx.sqlite:sqlite-*:2.5.0-alpha05 yayınlanır. 2.5.0-alpha05 sürümü bu taahhütleri içerir.

API Değişiklikleri

  • SQLiteKt, SQLite olarak ve BundledSQLiteKt, BundledSQLite olarak yeniden adlandırıldı. (I8b501)

Sürüm 2.5.0-alpha04

12 Haziran 2024

androidx.sqlite:sqlite-*:2.5.0-alpha04 yayınlanır. Sürüm 2.5.0-alpha04 bu kaydetmeleri içerir.

API Değişiklikleri

  • Veritabanı bağlantısı açarken açık işaretlerini iletmek için BundledSQLiteDriver işlevine open() aşırı yükleme API'si eklendi. SQLite'in derlendiği paketteki çoklu iş parçacıklı mod yerine salt okuma modunda veritabanı açmak veya serileştirilmiş iş parçacığı güvenli modunu kullanmak için kullanışlıdır (b/340949940).

Hata Düzeltmeleri

  • ARM32'li Android cihazlarda atomik sembollerin eksik olması nedeniyle Bundled SQLite Sürücüsü'nde UnsatisfiedLinkError atılmasına neden olan bir bağlantı sorunu düzeltildi. (b/341639198)
  • Sürücüler üzerinde, sıfır uzunlukta bir bayt dizisinin bir sütuna bağlanmasının, sütundan okunurken null değere yol açmasına neden olan sorun düzeltildi.

Sürüm 2.5.0-alpha03

29 Mayıs 2024

androidx.sqlite:sqlite-*:2.5.0-alpha03 yayınlanır. Sürüm 2.5.0-alpha03 bu kaydetmeleri içerir.

Hata Düzeltmeleri

  • BundledSQLiteDriver ile oluşturulan veritabanlarının C null sonlandırıcı karakteri içermesiyle ilgili sorun düzeltildi. (b/340822359)

Sürüm 2.5.0-alpha02

14 Mayıs 2024

androidx.sqlite:sqlite-*:2.5.0-alpha02, 2.5.0-alpha01 sürümünden bu yana önemli bir değişiklik içermeden yayınlanmıştır . 2.5.0-alpha02 sürümü bu taahhütleri içerir.

Sürüm 2.5.0-alpha01

1 Mayıs 2024

androidx.sqlite:sqlite-*:2.5.0-alpha01 yayınlanır. 2.5.0-alpha01 sürümü bu taahhütleri içerir.

Yeni Özellikler

  • Kotlin Çoklu Platform (KMP) Desteği: Room KMP'nin ilk sürümü olan Room 2.7.0-alpha01'in kullanıma sunulmasıyla birlikte, Room'da KMP olmasını sağlayan SQLite API'leri de güncellendi. andriodx.sqlite paketi, alt düzey SQLite API'lerini tanımlayan üç arayüz içeriyor: SQLiteDriver, SQLiteConnection ve SQLiteStatement. androidx.sqlite:sqlite-framework yapısı, Android ve iOS arayüzlerinin yerel olarak uygulanmasını sunarken androidx.sqlite:sqlite-bundled, kaynaktan derlenen SQLite özelliğini ("paketlenmiş SQLite" olarak da bilinir) kullanan bir uygulama sunar. SQLite Driver API hakkında daha fazla bilgi edinmek için resmi SQLite KMP belgelerine bakabilirsiniz.

Sürüm 2.4

Sürüm 2.4.0

18 Ekim 2023

androidx.sqlite:sqlite:2.4.0, androidx.sqlite:sqlite-framework:2.4.0 ve androidx.sqlite:sqlite-ktx:2.4.0 serbest bırakıldı. 2.4.0 sürümü bu taahhütleri içerir.

2.3.0 sürümünden beri yapılan önemli değişiklikler

  • Çeşitli hata düzeltmeleri eklendi.

Sürüm 2.4.0-rc01

20 Eylül 2023

androidx.sqlite:sqlite:2.4.0-rc01, androidx.sqlite:sqlite-framework:2.4.0-rc01 ve androidx.sqlite:sqlite-ktx:2.4.0-rc01 serbest bırakıldı. 2.4.0-rc01 sürümü bu taahhütleri içerir.

Sürüm 2.4.0-beta01

23 Ağustos 2023

androidx.sqlite:sqlite:2.4.0-beta01, androidx.sqlite:sqlite-framework:2.4.0-beta01 ve androidx.sqlite:sqlite-ktx:2.4.0-beta01 yayınlandı. Sürüm 2.4.0-beta01 bu kaydetmeleri içerir.

Sürüm 2.4.0-alpha03

9 Ağustos 2023

androidx.sqlite:sqlite:2.4.0-alpha03, androidx.sqlite:sqlite-framework:2.4.0-alpha03 ve androidx.sqlite:sqlite-ktx:2.4.0-alpha03 serbest bırakıldı. 2.4.0-alpha03 sürümü bu kaydetmeleri içerir.

Sürüm 2.4.0-alpha02

21 Haziran 2023

androidx.sqlite:sqlite:2.4.0-alpha02, androidx.sqlite:sqlite-framework:2.4.0-alpha02 ve androidx.sqlite:sqlite-ktx:2.4.0-alpha02 hiçbir değişiklik yapılmadan serbest bırakıldı. 2.4.0-alpha02 sürümü bu taahhütleri içerir.

Sürüm 2.4.0-alpha01

22 Mart 2023

androidx.sqlite:sqlite:2.4.0-alpha01, androidx.sqlite:sqlite-framework:2.4.0-alpha01 ve androidx.sqlite:sqlite-ktx:2.4.0-alpha01 yayınlandı. 2.4.0-alpha01 sürümü bu taahhütleri içerir.

Hata Düzeltmeleri

  • SupportSQLiteQueryBuilder'te ortaya çıkabilecek bir NullPointerException düzeltildi. (5df8698)

Sürüm 2.3.1

Sürüm 2.3.1

22 Mart 2023

androidx.sqlite:sqlite:2.3.1, androidx.sqlite:sqlite-framework:2.3.1 ve androidx.sqlite:sqlite-ktx:2.3.1 yayınlandı. 2.3.1 sürümü bu taahhütleri içerir.

Hata Düzeltmeleri

  • Taşıma sırasında şema değişikliğinden sonra SQL sorgularının geçersiz kılınmaması sorununun çerçevede yaşanmasını önler. FrameworkSupportSQLiteOpenHelper artık sorunun önüne geçmek için taşıma işlemleri sırasında minimum SQL ifadesi önbelleğini ayarlayacak. (0ad2a8f)
  • Önbelleğe alma dizininin SupportSQLiteLock için kullanılamayabileceği ve bu nedenle null bir dosyanın düzgün şekilde işlenmesi gerektiğiyle ilgili sorun düzeltildi. (9d177dc)
  • attachedDbs işlevinin, ekli veritabanlarının tam listesini döndürmediği sorun düzeltildi. (5f008e1)

Sürüm 2.3.0

Sürüm 2.3.0

11 Ocak 2023

androidx.sqlite:sqlite:2.3.0, androidx.sqlite:sqlite-framework:2.3.0 ve androidx.sqlite:sqlite-ktx:2.3.0 serbest bırakıldı. 2.3.0 sürümü bu taahhütleri içerir.

2.2.0 sürümünden beri yapılan önemli değişiklikler

  • androidx.sqlite kitaplık grubu kaynakları, Java'dan Kotlin'e dönüştürüldü. androidx.sqlite öğesinde bazı null değer ek açıklamaları eksik olduğundan, kaynaklarınız Kotlin'deyse ve kod yanlış null değeri çıkarıyorsa kaynak uyumsuzluğu hatalarıyla karşılaşabileceğinizi unutmayın. Ayrıca, belirli alıcı yöntemleri Kotlin dosyalarında mülk erişim söz dizimini gerektiren mülklere dönüştürüldü. Önemli uyumsuzluk varsa lütfen hata kaydı oluşturun. (b/240707042)
  • Kurtarma mekanizması sırasında veri kaybına izin vermek için SupportSQLite's yapılandırmasında bir API ekleyin. (I1b830, b/215592732)
  • Çok işlemli ilk kez veritabanı oluşturma ve taşıma işlemlerini korumak için FrameworkSQLite* düzeyinde çok işlemli kilit ve kullanım API'si eklendi. (Ied267, b/193182592)

Sürüm 2.3.0-rc01

7 Aralık 2022

androidx.sqlite:sqlite:2.3.0-rc01, androidx.sqlite:sqlite-framework:2.3.0-rc01 ve androidx.sqlite:sqlite-ktx:2.3.0-rc01 serbest bırakıldı. 2.3.0-rc01 sürümü bu taahhütleri içerir.

Hata Düzeltmeleri

  • Boş değer atanabilir sütunlar için SupportSQLiteQueryBuilder'te NPE sorununu çözme. (Ica8f5)

Sürüm 2.3.0-beta02

9 Kasım 2022

androidx.sqlite:sqlite:2.3.0-beta02, androidx.sqlite:sqlite-framework:2.3.0-beta02 ve androidx.sqlite:sqlite-ktx:2.3.0-beta02 yayınlandı. 2.3.0-beta02 sürümü bu taahhütleri içerir.

  • Sorgu bağımsız değişkenlerini değişmez (Array<Any?>) olandan değişken (Array<out Any?>) olana geçiren çeşitli API'leri, Java'nın dizi davranışıyla eşleşecek şekilde düzeltin. (b/253531073)

Sürüm 2.3.0-beta01

5 Ekim 2022

androidx.sqlite:sqlite:2.3.0-beta01, androidx.sqlite:sqlite-framework:2.3.0-beta01 ve androidx.sqlite:sqlite-ktx:2.3.0-beta01 yayınlandı. 2.3.0-beta01 sürümü bu taahhütleri içerir.

API Değişiklikleri

  • android.sqlite kaynaklarının tümü Java'dan Kotlin'e dönüştürüldü. b/240707042
  • Dönüşümle ilgili dikkate değer bir değişiklik, aşağıdaki alıcı işlevlerinin mülk haline gelmesidir:
    • SupportSQLiteDatabase'te:
    • attachedDbs
    • isDatabaseIntegrityOk
    • isDbLockedByCurrentThread
    • isOpen
    • isReadOnly
    • isWriteAheadLoggingEnabled
    • maximumSize
    • pageSize
    • path
    • version
    • SupportSQLiteOpenHelper'te:
    • databaseName
    • readableDatabase
    • writableDatabase

Sürüm 2.3.0-alpha05

24 Ağustos 2022

androidx.sqlite:sqlite:2.3.0-alpha05, androidx.sqlite:sqlite-framework:2.3.0-alpha05 ve androidx.sqlite:sqlite-ktx:2.3.0-alpha05 yayınlandı. 2.3.0-alpha05 sürümü bu kaydetmeleri içerir.

API Değişiklikleri

  • androidx.sqlite kaynakları kitaplık grubu Java'dan Kotlin'e dönüştürüldü. androidx.sqlite'ta bazı boş değer atanabilirlik ek açıklamaları eksik olduğundan, kaynaklarınız Kotlin'deyse ve kod yanlış null değeri çıkarıyorsa kaynak uyumsuzluğu hatalarıyla karşılaşabileceğinizi unutmayın. Önemli bir uyumsuzluk varsa lütfen hata kaydı oluşturun. (b/240707042)

Sürüm 2.3.0-alpha04

10 Ağustos 2022

androidx.sqlite:sqlite:2.3.0-alpha04, androidx.sqlite:sqlite-framework:2.3.0-alpha04 ve androidx.sqlite:sqlite-ktx:2.3.0-alpha04 serbest bırakıldı. 2.3.0-alpha04 sürümü bu taahhütleri içerir.

API Değişiklikleri

  • Güncellenen geçersiz değer (I29fbd)

Sürüm 2.3.0-alpha03

1 Haziran 2022

androidx.sqlite:sqlite:2.3.0-alpha03, androidx.sqlite:sqlite-framework:2.3.0-alpha03 ve androidx.sqlite:sqlite-ktx:2.3.0-alpha03 yayınlandı. 2.3.0-alpha03 sürümü bu taahhütleri içerir.

API Değişiklikleri

  • androidx.sqlite.ProcessLock özelliğini kısıtlanmış hale getir. API, androidx.sqlite içindeki işleviyle sınırlı ve kapsamlı olup genel amaçlı çok işlemli kilit olarak kullanılmamalıdır. (I1643f)

Sürüm 2.3.0-alpha02

6 Nisan 2022

androidx.sqlite:sqlite:2.3.0-alpha02, androidx.sqlite:sqlite-framework:2.3.0-alpha02 ve androidx.sqlite:sqlite-ktx:2.3.0-alpha02 yayınlandı. 2.3.0-alpha02 sürümü bu taahhütleri içerir.

  • 2.3.0-alpha01'den beri önemli bir değişiklik yok

Sürüm 2.3.0-alpha01

23 Şubat 2022

androidx.sqlite:sqlite:2.3.0-alpha01, androidx.sqlite:sqlite-framework:2.3.0-alpha01 ve androidx.sqlite:sqlite-ktx:2.3.0-alpha01 yayınlandı. Sürüm 2.3.0-alpha01 bu kaydetmeleri içerir.

API Değişiklikleri

  • Kurtarma mekanizması sırasında veri kaybına izin vermek için SupportSQLite'in yapılandırmasına bir API ekleyin. (I1b830, b/215592732)
  • Çok işlemli ilk kez veritabanı oluşturma ve taşıma işlemlerini korumak için FrameworkSQLite* düzeyinde çok işlemli kilit ve kullanım API'si eklendi. (Ied267, b/193182592)

Sürüm 2.2.0

Sürüm 2.2.0

15 Aralık 2021

androidx.sqlite:sqlite:2.2.0, androidx.sqlite:sqlite-framework:2.2.0 ve androidx.sqlite:sqlite-ktx:2.2.0 yayınlandı. 2.2.0 sürümü bu taahhütleri içerir.

2.1.0'dan bu yana önemli değişiklikler

SupportSQLiteDatabase için execPerConnectionSQL()'e varsayılan yöntem ekleyin.

Sürüm 2.2.0-rc01

1 Aralık 2021

androidx.sqlite:sqlite:2.2.0-rc01, androidx.sqlite:sqlite-framework:2.2.0-rc01 ve androidx.sqlite:sqlite-ktx:2.2.0-rc01 yayınlandı. 2.2.0-rc01 sürümü bu taahhütleri içerir.

2.2.0-beta01 sürümünden bu yana önemli bir değişiklik yapılmamıştır.

Sürüm 2.2.0-beta01

13 Ekim 2021

androidx.sqlite:sqlite:2.2.0-beta01, androidx.sqlite:sqlite-framework:2.2.0-beta01 ve androidx.sqlite:sqlite-ktx:2.2.0-beta01 yayınlandı. 2.2.0-beta01 sürümü bu taahhütleri içerir.

  • Önceki alfa sürümüne göre değişiklik yok.

Sürüm 2.2.0-alpha02

21 Temmuz 2021

androidx.sqlite:sqlite:2.2.0-alpha02, androidx.sqlite:sqlite-framework:2.2.0-alpha02 ve androidx.sqlite:sqlite-ktx:2.2.0-alpha02 yayınlandı. 2.2.0-alpha02 sürümü bu taahhütleri içerir.

2.2.0-alpha01 sürümünden bu yana önemli bir değişiklik yapılmadı. Bu yayın, 2.4.0-alpha04 odasının iptaliyle uyumlu hale getirilmelidir.

Sürüm 2.2.0-alpha01

16 Haziran 2021

androidx.sqlite:sqlite:2.2.0-alpha01, androidx.sqlite:sqlite-framework:2.2.0-alpha01 ve androidx.sqlite:sqlite-ktx:2.2.0-alpha01 yayınlandı. 2.2.0-alpha01 sürümü bu taahhütleri içerir.

API Değişiklikleri

  • SupportSQLiteDatabase'e (I86326, b/172270145) execPerConnectionSQL() için varsayılan yöntem ekleyin

2.1.0 sürümü

2.1.0 sürümü

22 Ocak 2020

androidx.sqlite:sqlite:2.1.0, androidx.sqlite:sqlite-framework:2.1.0 ve androidx.sqlite:sqlite-ktx:2.1.0, 2.1.0-rc01'den bu yana herhangi bir değişiklik olmadan yayınlanır. 2.1.0 sürümü bu kaydetmeleri içerir.

2.0.1 sürümünden beri yapılan önemli değişiklikler

  • SupportSQLiteOpenHelper kullanıldığında veritabanının yedek yok dizininde oluşturulması gerektiğini belirtmek için kullanılabilen useNoBackupDirectory desteği.

Sürüm 2.1.0-rc01

8 Ocak 2020

androidx.sqlite:sqlite-*:2.1.0-rc01 yayınlanır. 2.1.0-rc01 sürümü bu taahhütleri içerir.

Bu sürüm, 2.1.0-beta01 ile aynıdır.

Sürüm 2.1.0-beta01

4 Aralık 2019

androidx.sqlite:sqlite:2.1.0-beta01, androidx.sqlite:sqlite-framework:2.1.0-beta01 ve androidx.sqlite:sqlite-ktx:2.1.0-beta01, 2.1.0-alpha01'den bu yana herhangi bir değişiklik olmadan yayınlanır. 2.1.0-beta01 sürümü bu taahhütleri içerir.

Sürüm 2.1.0-alpha01

7 Kasım 2019

androidx.sqlite:sqlite:2.1.0-alpha01, androidx.sqlite:sqlite-framework:2.1.0-alpha01 ve androidx.sqlite:sqlite-ktx:2.1.0-alpha01 yayınlandı. 2.1.0-alpha01 sürümü bu taahhütleri içerir.

API değişiklikleri

  • Dosya tabanlı bir veritabanının oluşturulması ve yedekleme dizininde bulunmaması gerektiğini belirtmek için SupportSQLiteOpenHelper.Configuration adlı yeni bir özellik eklendi.useNoBackupDirectory

Sürüm 2.0.1

Sürüm 2.0.1

13 Mart 2019

androidx.sqlite yapı grubunun 2.0.1 sürümü iki hata düzeltmesiyle yayınlandı.

Hata Düzeltmeleri

  • FrameworkSQLiteOpenHelper ürününün bozuk bir veritabanından düzgün şekilde kurtarılamamasına veya başlatma sırasında hatalı bir taşıma işlemine neden olan iki sorun düzeltildi. (b/111504749 ve b/111519144)