Akademi JavaScript · Pelajaran

Transaksi dan CRUD

Tambah, baca, kemas kini dan padam rekod.

Pelajaran 2 daripada 413 langkah

Transaksi dan CRUD ialah pelajaran Akademi JavaScript percuma di CoddyKit. Ini ialah pelajaran 2 daripada 4. Sebanyak 3 pelajaran dalam laluan pembelajaran ini boleh dibaca sepenuhnya secara percuma — selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan praktikal dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Akademi JavaScript, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Akademi JavaScript merangkumi sejumlah 4 pelajaran.

Segalanya ialah transaction

Dalam IndexedDB, semua operasi bacaan dan penulisan berlaku dalam transaction. Satu transaction mengumpulkan operasi supaya semuanya sama ada berjaya atau dikembalikan semula, sekali gus mengekalkan konsistensi data.

Memulakan transaction

Cipta satu dengan db.transaction(storeNames, mode). Modnya ialah 'readonly' (lalai) atau 'readwrite' untuk pengubahsuaian.

const tx = db.transaction('notes', 'readwrite');
const store = tx.objectStore('notes');

Mendapatkan objek store

Daripada transaction, dapatkan object store yang ingin Anda gunakan melalui tx.objectStore(name). Semua kaedah untuk mencipta, membaca, mengemas kini dan memadam berada pada store ini.

const tx = db.transaction('notes', 'readwrite');
const store = tx.objectStore('notes');
// store.add / get / put / delete

Menambah Rekod

store.add(value) memasukkan rekod baharu. Operasi ini gagal jika rekod dengan kunci yang sama sudah wujud, sekali gus melindungi daripada penulisan ganti yang tidak disengajakan.

const store = tx.objectStore('notes');
const req = store.add({ id: 1, text: 'Buy milk' });
req.onsuccess = () => console.log('added with key', req.result);

Membaca Rekod

store.get(key) mendapatkan satu rekod berdasarkan kuncinya. Hasilnya tiba pada onsuccess permintaan sebagai request.result (undefined jika tidak ditemui).

const req = store.get(1);
req.onsuccess = () => {
  console.log('record:', req.result);
};

Mengemas Kini dengan put

store.put(value) memasukkan atau menggantikan rekod. Tidak seperti add, operasi ini menulis ganti rekod sedia ada dengan kunci yang sama, menjadikannya sesuai untuk kemas kini.

store.put({ id: 1, text: 'Buy milk and eggs' });
// Replaces the existing record with id 1.

Memadam Rekod

store.delete(key) membuang rekod dengan kunci yang diberikan. Operasi ini berjaya walaupun tiada rekod sedemikian wujud.

const req = store.delete(1);
req.onsuccess = () => console.log('deleted');

Mengosongkan store

store.clear() membuang semua rekod dalam object store sekali gus. Gunakannya untuk menetapkan semula data cache.

store.clear();
// All records in 'notes' are removed.

Penyelesaian transaction

transaction itu sendiri mencetuskan oncomplete apabila semua operasinya telah disahkan, dan onerror atau onabort jika sesuatu gagal. Gunakan oncomplete untuk mengetahui bahawa penulisan telah disimpan secara kekal.

tx.oncomplete = () => console.log('all changes saved');
tx.onerror = () => console.log('transaction failed');

Tingkah Laku Pelakuan Automatik

transaction dilaksanakan secara automatik apabila kawalan kembali kepada gelung acara tanpa permintaan yang belum selesai. Anda tidak boleh mengekalkan satu transaction terbuka merentasi await bagi kerja tak segerak yang tidak berkaitan; lakukan semua operasi store bersama-sama.

// Queue operations synchronously within the same tx:
store.add({ id: 2, text: 'A' });
store.add({ id: 3, text: 'B' });
// Both commit together when tx completes.

Ringkasan CRUD

Empat operasi teras dipadankan dengan jelas:

  • Cipta: add
  • Baca: get
  • Kemas kini: put
  • Padam: delete

Semuanya dilakukan dalam transaksi yang menjamin ketekalan.

Semakan Pantas

Uji pemahaman Anda tentang transaksi dan CRUD.

Imbas Kembali

Anda telah mempelajari transaksi dan CRUD:

  • Mulakan dengan db.transaction(store, mode).
  • Dapatkan store dengan tx.objectStore(name).
  • add memasukkan, get membaca, put memasukkan atau mengemas kini, dan delete membuang.
  • Hasil diterima melalui onsuccess bagi setiap permintaan.
  • tx.oncomplete mengesahkan bahawa perubahan telah disimpan.

Seterusnya, indeks dan kueri.

Percuma untuk bermula

Pelajari JavaScript dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
59
Pelajaran
200

Soalan Lazim

Adakah pelajaran “Transaksi dan CRUD” percuma?

Ya — sebanyak 3 pelajaran dalam laluan pembelajaran Akademi JavaScript, termasuk “Transaksi dan CRUD”, boleh dibaca sepenuhnya secara percuma di web ini. Selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan interaktif dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Kursus Akademi JavaScript merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Transaksi dan CRUD”?

Tambah, baca, kemas kini dan padam rekod. Anda berlatih Akademi JavaScript menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan Akademi JavaScript?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Akademi JavaScript di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 2 daripada 4.

Berapa lamakah pelajaran “Transaksi dan CRUD” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran Akademi JavaScript ini?

Ya. Setiap pelajaran Akademi JavaScript menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. Membuka Pangkalan Data
  2. Transaksi dan CRUD
  3. Indeks dan Pertanyaan
  4. Pemberian Versi dan Naik Taraf
← Kembali ke Akademi JavaScript