Pengenalan mengenai Pangkalan Data SQLite Android



Blog memberikan pengenalan kepada Pangkalan Data SQLite Android

Pengenalan mengenai Pangkalan Data SQLite Android

Pangkalan Data SQLite Android memerlukan sedikit memori (sekitar 250kb), yang tersedia di semua peranti android. Setiap peranti mempunyai sokongan terpadu untuk pangkalan data SQLite, yang dikendalikan secara automatik di android mulai dari penciptaannya, pelaksanaan hingga proses pertanyaan.





SQLite adalah pangkalan data sumber terbuka, tersedia di setiap pangkalan data android. Ia menyokong ciri pangkalan data hubungan standard, seperti sintaks SQL, transaksi & pernyataan SQL. SQLite adalah versi pangkalan data SQL yang lebih ringan, di mana sebahagian besar perintah SQL tidak dijalankan pada pangkalan data SQLite. Setelah SQLite di tempat, penting untuk memastikan bahawa satu ciri atau perintah tersedia di SQLite barulah ia dapat dijalankan.

Kelebihan Asas SQLite:



  • Ini adalah pangkalan data ringan
  • Memerlukan memori yang sangat sedikit
  • Pangkalan data yang diuruskan secara automatik

SQLite hanya menyokong 3 Jenis Datat:

  • Teks (seperti tali) - untuk menyimpan stor jenis data
  • Integer (seperti int) - untuk menyimpan kunci utama integer
  • Nyata (seperti berganda) - untuk menyimpan nilai panjang

Pada dasarnya SQLite tidak mengesahkan jenis data dengan sendirinya. Dengan kata lain, apa sahaja jenis data yang digunakan, ia diistilahkan sebagai sah.

Sebagai contoh, dalam kes ini, pangkalan data pengendali kabel telah dibincangkan. Di sini, jadual baru ditambahkan dengan 'teks' di bidang nama dan kotak nama bidang yang membawa 'medan teks'. Jenis data nilai rawak telah dibuat. Hasil akhirnya adalah jadual ujian dengan jenis data yang tidak sah, yang menunjukkan bahawa SQLite tidak mengesahkan jenis data.



* Seseorang dapat menemukan pangkalan data dengan mengklik paket dan mengakses folder data ke folder pangkalan data, yang berisi file.

Catatan: Kelas SQLiteOpen Helper digunakan untuk menguruskan pembuatan pangkalan data dan pengurusan versi.

Soalan Pengguna:

Adakah perubahan hasil versi db adalah perubahan objek versi SQLite?

Tidak ada perubahan dalam versi SQLite objek karena satu menangani pembuatan / kemas kini pangkalan data, dan yang lain sedang memainkan data yang disimpan ke dalam tabel pangkalan data. Oleh itu tidak ada pergantungan sama sekali

Kembali, ketika kami memperluas kelas SQLiteopenHelper, kami menimpa kaedah Oncreate & OnUpgrade di kelas ini. Apabila pangkalan data SQLite diakses, kadangkala lambat, bergantung kepada kerumitan pertanyaan. Selalu disukai untuk memastikan bahawa kesan atau pertanyaan yang paling sedikit berjalan dalam pengulangan dihindarkan ketika pertanyaan SQL dijalankan. Ia jugadisyorkan untuk menjalankan pangkalan data secara serentak.Kaedah ini secara automatik dikendalikan atau dipanggil oleh kerangka kerja. Juga, harus diperhatikan bahawa setiap kali seseorang meningkatkan versi DB, ia akan secara automatik memanggil onUpgrade ke atasnya.

Setiap kali seseorang bercakap mengenai kelas pembantu terbuka SQLite, nama & versi pangkalan datanya akan diteruskan dalam pembangun kelas lanjutan.

Di sini, dua perkara perlu diambil kira:

  • Kaedah OnCreate () dipanggil, jika pangkalan data tidak ada.
  • Kaedah OnUpgrade () dipanggil, jika versi pangkalan data dikemas kini.

Kelas pembantu terbuka SQLite memberikan nama dan versi dalam konstruktor. Getwriteabledatabase () dipanggil dan jika pangkalan data tidak ada, ia akan OnCreate. Sekiranya berlaku, pangkalan data ada dan versi dikemas kini, ia akan memanggil OnUpgrade ().

Adakah kaedah ini pada panggilan pertama db?

Mari kita ambil contoh. Setelah kami memasang aplikasi, aplikasi akan membuat OnCreate dan kaedah apk dimuat naik ke gedung permainan Google. Setelah versi terbaru apk dimuat turun, ia akan memeriksa pangkalan data yang sudah dipasang. Sekiranya ia mempunyai versi yang lebih tinggi, ia akan memanggil peningkatan, jika tidak, maka ia tidak akan menghasilkan apa-apa.

Soalan Pengguna

Adakah diperlukan izin pengguna untuk meningkatkan versi db?

urutan c ++ fibonacci

Tidak, izin tidak diperlukan, kerana kami sedang mengusahakan sumber aplikasi, kami tidak perlu meminta izin.

Soalan Pengguna

Sekiranya pengguna1 telah memasang aplikasi saya dan ini adalah versi yang ditingkatkan untuk DB dan seterusnya pengguna2 memasang aplikasi baru dan pengguna1 sedang meningkatkan aplikasi. Dalam senario seperti itu, jika pengguna meningkatkan versi dipanggil dan kaedah membuat pengguna2 dipanggil, apakah semua kaedah dari android?

Ya, kerana kami belum mempunyai versi apa pun yang terpasang pada peranti. Tidak menjadi masalah, selagi tidak ada versi terdahulu yang dipasang ke dalam peranti. Ini seperti pengendalian kerangka.

Soalan Pengguna

Bolehkah kita mempunyai objek pangkalan data SQLite? Bagaimana jika nama db saya mempunyaikonflikdengan objek nama db yang lain?

Tidak menjadi masalah, kerana pangkalan data terletak pada nama paket aplikasi, yang seharusnya tidak bertentangan walaupun sub-folder dengan nama yang sama telah dibuat. Ia hanya penting pada tahap root dan pengendalian tahap root dilakukan dengan bantuan nama pakej. Harus diingat bahawa kita tidak boleh mempunyai dua aplikasi dengan nama pakej yang sama, tetapi kita boleh mempunyai 2 nama db yang berbeza dengan pakej yang berbeza. Pangkalan data SQLite mengurus pengemaskinian, penghapusan, penyisipan, permintaan, dan penutupan dan pembukaan operasi pangkalan data dengan bantuan objek.

Ada soalan untuk kami? Sebutkannya di bahagian komen dan kami akan menghubungi anda.

Catatan berkaitan: