Cuma, Mart 29, 2024

SQLite

SQLite Dosyası Nedir?

.sqlite uzantılı bir dosya, SQLite yazılımıyla oluşturulan basit bir SQL veritabanı dosyasıdır. Kendi başına bir dosyadaki bir veritabanıdır ve bağımsız, tam özellikli, yüksek düzeyde güvenilir bir SQL veritabanı motorunu uygular.

SQLite veritabanı dosyaları, bu dosyaları ağ üzerinden basit bir şekilde değiştirerek sistemler arasında zengin içerikleri paylaşmak için kullanılabilir.

Hemen hemen tüm cep telefonları ve bilgisayarlar veri depolamak ve paylaşmak için SQLite kullanır ve platformlar arası uygulamalar için tercih edilen dosya formatıdır. Kompakt kullanımı ve kolay kullanılabilirliği nedeniyle, diğer uygulamaların içinde paketlenmiş olarak gelir. C, C#, C++, Java, PHP gibi programlama dilleri için SQLite bağlamaları mevcuttur. ), Ve bircok digerleri.

SQLite Dosya Biçimi

Gerçekte SQLite, SQLite dosya biçimini kullanarak SQLite RDBMS’yi uygulayan bir C-Dil kitaplığıdır. Her gün yeni cihazların gelişmesiyle, dosya formatı eski cihazlara uyum sağlamak için geriye dönük olarak uyumlu tutuldu. SQLite dosya formatı, veriler için uzun vadeli arşiv formatı olarak görülmektedir.

Veritabanı Dosyası

Bir SQLite veritabanı tamamen iki dosya aracılığıyla korunur.

  • Ana veritabanı Dosyası – SQLite veritabanının tam durumunu içerir
  • Geri Alma Günlüğü – Ek bilgileri ikinci bir dosyada saklar ve işlemlerin gerçekleştirilmesi sırasında kullanılır. SQLite’ın WAL modunda olması durumunda, bir yazma kafası günlük dosyası tutulur.

Günlük Dosyası

Bu dosya, bilgisayar çökmesi gibi durumlarda son işlemin tamamlanamaması durumunda tüm bilgilerin saklanması için tasarlanmıştır. Bu dosya, veritabanı dosyasını tutarlı bir duruma geri yüklemek için kullanılır.

Sayfa

Ana SQLite veritabanı dosyası bir veya daha fazla sayfadan oluşur. Herhangi bir zamanda, ana veritabanındaki her sayfanın aşağıdakilerden biri olan tek bir kullanımı vardır:

  • Kilit baytı sayfası
  • Serbest liste sayfası
  • Bir serbest liste ana sayfa
  • Bir serbest liste yaprak sayfası
  • Bir b-ağacı sayfası
  • Bir tablo b-ağacı iç sayfası
  • Bir tablo b-ağacı yaprak sayfası
  • Bir dizin b-ağacı iç sayfası
  • Bir dizin b-ağacı yaprak sayfası
  • Bir yük taşma sayfası
  • Bir işaretçi harita sayfası

SQLite veritabanı dosyalarının boyutu birkaç kilobayttan birkaç gigabayta kadar değişebilir.

SQLite Başlığı

SQLite veritabanı başlığı, veritabanı dosyasının ilk 100 baytında bulunur. Geçerli her SQLite veritabanı dosyası 16 bayt (onaltılık olarak) ile başlar:53 51 4c 69 74 65 20 66 6f 72 6d 61 74 20 33 00. Başlık alanlarının detayları aşağıdaki tablodaki gibidir.

Ofset Boyut Açıklama
0 16 Başlık dizesi: “SQLite biçimi 3\000”
16 2 Bayt olarak veritabanı sayfa boyutu. 512 ile 32768 (dahil) arasında ikinin katı veya 65536 sayfa boyutunu temsil eden 1 değeri olmalıdır.
18 1 Dosya biçimi yazma sürümü. miras için 1; WAL için 2.
19 1 Dosya biçimi okunan sürüm. miras için 1; WAL için 2.
20 1 Her sayfanın sonunda baytlık kullanılmayan “ayrılmış” alan. Genellikle 0.
21 1 Maksimum yerleşik yük oranı. 64 olmalı.
22 1 Minimum yerleşik yük oranı. 32 olmalı.
23 1 Yaprak yük oranı. 32 olmalı.
24 4 Dosya değişiklik sayacı.
28 4 Veritabanı dosyasının sayfa cinsinden boyutu. “Başlık içi veritabanı boyutu”.
32 4 İlk serbest liste ana sayfasının sayfa numarası.
36 4 Serbest listedeki toplam sayfa sayısı.
40 4 Şema çerezi.
44 4 Şema biçim numarası. Desteklenen şema biçimleri 1, 2, 3 ve 4’tür.
48 4 Varsayılan sayfa önbelleği boyutu.
52 4 Otomatik vakum veya artımlı vakum modlarındayken en büyük kök b-ağacı sayfasının sayfa numarası, aksi halde sıfır.
56 4 Veritabanı metin kodlaması. 1 değeri UTF-8 anlamına gelir. 2 değeri UTF-16le anlamına gelir. 3 değeri UTF-16be anlamına gelir.
60 4 Kullanıcı_sürüm pragması tarafından okunan ve ayarlanan “kullanıcı sürümü”.
64 4 Artırımlı vakum modu için doğru (sıfır değil). Aksi takdirde yanlış (sıfır).
68 4 PRAGMA application_id tarafından ayarlanan “Uygulama Kimliği”.
72 20 Genişletme için ayrıldı. Sıfır olmalı.
92 4 Geçerli sürüm numarası.
96 4 SQLITE_VERSION_NUMBER

Referanslar

Önceki İçerikTE
Sonraki İçerikSQL

BENZER YAZILAR

Apple TV Kullanıcıları için Resmi tvOS 16 Çıkış Tarihi Açıklandı

tvOS 16 süper gerçek ve Apple TV HD ve Apple TV 4K set üstü kutunuz için resmi çıkış tarihi 12 Eylül olarak belirlendi. Apple TV...

Apple, iOS 15.6’yı İmzalamayı Durdurdu

Bugün Apple, iOS 15.6.1’in piyasaya sürülmesinin ardından iOS 15.6’yı imzalamayı durdurdu. Bunun anlamı, artık iOS 15.6.1’den iOS 15.6’ya düşüremezsiniz. Yeni değişiklik, iOS 15.6 çalıştıran iPhone’larını...

Apple, Tüm iPhone Kullanıcıları İçin Yerleşik Uygulamalardaki Reklamları Artırabilir

Hepimiz biliyoruz ki Apple dünyanın dört bir yanındaki müşterilerin kullandığı ve sevdiği üst düzey ürünlerle eş anlamlıdır. Şirket, şimdiye kadar rekabette görülmemiş bir düzeyde yazılımla...

POPÜLER YAZILAR

Lazer Hassasiyeti, NASA’nın Navigasyon Doppler Lidar’ı ile Ay Keşifleriyle Buluşuyor

NASAAy gösterisi için hazırlanan Navigasyon Doppler Lidar teknolojisi, uzay araştırmalarının ötesinde sonuçları olan iniş teknolojisindeki ilerlemeleri vurguluyor. Bu ayın sonlarında, NASA'nın ticari ay teslimat hizmetleri...

Ay, Mars ve Ötesi için Öncü Fisyon Enerjisi

NASA özerklik, güvenlik ve uzun vadeli çalışmaya odaklanarak Ay için bir nükleer fisyon reaktörü geliştirmeye yönelik Fisyon Yüzey Enerjisi Projesi ile ilerliyor. Bu çaba,...

Yeni Nesil OLED Teknolojisinin Arkasındaki Sır

Durham Üniversitesi'ndeki bilim adamlarının yeni bir araştırması, daha parlak, daha verimli ve daha kararlı mavi organik ışık yayan diyotlara (OLED'ler) doğru beklenmedik bir yolu...

SEC’in X hesabı, Bitcoin ETF onayına ilişkin sahte haberler yayınlamak için saldırıya uğradı

Birisi, ABD Menkul Kıymetler ve Borsa Komisyonu'nun (SEC) X (eski adıyla Twitter) hesabını ele geçirdi ve kurumun, kayıtlı ulusal güvenlik borsalarında Bitcoin ETF'lerinin (borsada...