• 0216 488 01 91
  • destek@sonsuzbilgi.com.tr

Firma Web Siteniz Var mı?

Mükemmel Bir Firma Web Siteniz Olsun, Bugün Kullanmaya Başlayın

*256 Bit SSL Sertifikası * Full Mobil Uyumlu * Full SEO Uyumlu
İsterseniz Mobil Uygulama Seçeneğiyle


JavaScript'te IndexedDB ile Yerel Veritabanı İşlemleri

Adı : JavaScript'te IndexedDB ile Yerel Veritabanı İşlemleri

IndexedDB, web uygulamaları için yerel depolama mekanizmasıdır. Bu depolama mekanizması web uygulamalarının verilerini yerel olarak depolayarak, kullanıcıların internet bağlantısına bağımlılıklarını azaltır. IndexedDB, asenkron bir API’den oluşur ve web uygulamalarına yüksek performans sağlamaktadır. Bu yazıda, IndexedDB’yi nasıl kullanacağımızı, verileri nasıl depolayacağımızı ve nasıl sorgulayacağımızı öğreniyoruz.
IndexedDB Genel Bakış
IndexedDB, NoSQL veritabanlarından biridir ve JavaScript ile kullanılabilir. Bu veritabanı, key-value çiftlerini (anahtar-değer) depolama modelini kullanır. IndexedDB’nin avantajı, web uygulamalarının verilerini yerel olarak depolayarak kullanıcılara yüksek performans sağlamasıdır.
IndexedDB, modern web tarayıcılarında bulunan bir API olarak sunulur. Bu nedenle, web tarayıcısı uyumlu olan her platform için kullanılabilir. IndexedDB, kullanıcıların internet erişimi olmadığında da çalışabilmesi için dizayn edilmiştir.
IndexedDB kimlik doğrulama, şifreleme veya veri sıkıştırma gibi özellikleri sunmaz, ancak web uygulamamızın gereksinimlerini karşılamak için bu özellikleri kullanabiliriz.
IndexedDB’ye Veri Ekleme
IndexedDB’de veri eklemek için, verileri bir object store’a eklememiz gerekir. Object store, IndexedDB’de verileri işlemek için kullanılan bir depolama mekanizmasıdır. Object store, verileri anahtar-değer çiftleri olarak depolar. Bu anahtar-değer çiftleri, anahtarların verileri bulmak için kullanıldığı indexed olabilir.
Object store’lar, verileri ilişkisel bir veritabanındaki tablolara benzer şekilde depolar. Her object store, depolanan veriler için bir anahtar sağlar ve her anahtar benzersiz olmalıdır.
Veri eklemek için, önce bir transactions başlatmalıyız. Transactions, IndexedDB’nin temel özelliklerinden biridir ve birden fazla işlemi birleştirir. Transactions kullanarak, obje store’lar ve index’ler üzerinde okuma, yazma ve silme işlemlerini gerçekleştiririz.
Transaction başlatmak için aşağıdaki kodu kullanabiliriz:
let transaction = db.transaction([objectStoreName], readwrite”);
Burada, db.transaction() yöntemini kullanarak bir transaction aldık. İlk parametre, verilerin depolandığı object store’un ismidir. İkinci parametre, transaction’ın okuma veya yazma işlemleri için kullanılacağını belirtir. Biz “readwrite” kullanarak, transaction’ı hem okumak hem de yazmak için ayarladık.
Transaction oluşturduktan sonra, verileri eklediğimiz object store’u seçmeliyiz. Bunun için aşağıdaki kodu kullanabiliriz:
let objectStore = transaction.objectStore(objectStoreName);
Burada, transaction üzerinde object store’un özelliklerine erişmek için objectStore değişkenini kullanıyoruz. “objectStoreName”, seçilen object store’un ismidir.
Veri eklemek için, object store’un add() veya put() yöntemlerini kullanabiliriz. add() yöntemi, veriyi object store’a yeni bir anahtarla ekler. put() yöntemi ise, eğer veri nesnesi o anahtarda zaten varsa, veriyi günceller. Aşağıdaki örnekte, add() yöntemini kullanarak veri ekleyelim:
let transaction = db.transaction([objectStoreName], readwrite”);
let objectStore = transaction.objectStore(objectStoreName);
let user = {
id: 1,
name: John Doe,
age: 30
};
let request = objectStore.add(user);
request.onsuccess = function(event) {
console.log(Kullanıcı başarıyla eklendi.);
};
Veri silmek için, silinecek verinin anahtarını kullanarak delete() yöntemini kullanabiliriz:
let transaction = db.transaction([objectStoreName], readwrite”);
let objectStore = transaction.objectStore(objectStoreName);
let request = objectStore.delete(id);
request.onsuccess = function(event) {
console.log(Kullanıcı başarıyla silindi.);
};
IndexedDB’de veri güncelleme
IndexedDB’de veri güncellemek için put() yöntemini kullanabiliriz. Eğer güncellenecek veri object store’da zaten varsa, put() yöntemi otomatik olarak veriyi günceller, aksi takdirde veri object store’a eklenir.
Aşağıdaki kod, put() yöntemini kullanarak verileri güncelleyen bir örnek kod örneği:
let transaction = db.transaction([objectStoreName], readwrite”);
let objectStore = transaction.objectStore(objectStoreName);
let user = {
id: 1,
name: Jane Doe,
age: 32
};
let request = objectStore.put(user);
request.onsuccess = function(event) {
console.log(Kullanıcı güncellendi.);
};
IndexedDB’de veri sorgulama
IndexedDB’de verileri sorgulamak için, bir index kullanırız. İndeksler, object store’da depolanan verilerin bir sıralamasını tutar. İndeksler, verileri daha hızlı sorgulamamızı sağlar.
IndexedDB’de bir index oluşturmak için, createIndex() yöntemini kullanabiliriz. createIndex() yönteminin ilk parametresi, index’in adıdır. İkinci parametre, object store üzerindeki depolama mekanizmasını (örneğin, bir property) belirtir. Üçüncü parametre, index’in benzersiz olup olmayacağını belirler.
Aşağıdaki örnek kod sorgulamak için bir index oluşturma işlemi göstermektedir:
let objectStore = db.createObjectStore(users, {keyPath: id});
objectStore.createIndex(nameIndex, name, {unique: false});
createObjectStore() yöntemi, yeni bir object store oluşturur. buradaki “users” ismi, oluşturulacak object store’ın ismidir.
Daha sonra, createIndex() yöntemi kullanarak bir index oluştururuz. Bu index, “nameIndex” olarak adlandırılacak. İkinci parametre, verilerimizi indexlemek için kullanacağımız property’dir. Burada, “name” property’si kullanılmıştır. Ve son olarak, üçüncü parametre, index’in unique olup olmayacağını ayarlar.
Index’i kullanarak sorgu yapmak için, aşağıdaki kod kullanılabilir:
let transaction = db.transaction([users], readwrite);
let objectStore = transaction.objectStore(users);
let index = objectStore.index(nameIndex);
let request = index.getAll(John);
request.onsuccess = function(event) {
console.log(John isimli tüm kullanıcıların listesi: , request.result);
};
Burada, transaction objesi alındıktan sonra, object store ve index belirlendi. Sonrasında, sadece ismi “John” olan kullanıcılar gibi bir koşul belirleyerek index üzerinde bir sorgu çalıştırdık.
IndexedDB JavaScript ve Web Teknolojilerindeki Önemi
IndexedDB’nin önemi, asenkron bir API olmasıdır. Asenkron programlama, web uygulamalarında çok önemlidir. IndexedDB, tüm verileri yerel olarak depolayarak, web uygulamalarının performansını büyük ölçüde artırabilir. Bununla birlikte, IndexedDB, verileri yönetmek için birçok işlevsellik sunar ve bu sayede verileri daha yönetilebilir hale getirir. Web uygulamalarınız için, IndexedDB, verileri yerel olarak depolamak istiyorsanız en iyi seçeneklerden biridir.

JavaScript'te IndexedDB ile Yerel Veritabanı İşlemleri

Adı : JavaScript'te IndexedDB ile Yerel Veritabanı İşlemleri

IndexedDB, web uygulamaları için yerel depolama mekanizmasıdır. Bu depolama mekanizması web uygulamalarının verilerini yerel olarak depolayarak, kullanıcıların internet bağlantısına bağımlılıklarını azaltır. IndexedDB, asenkron bir API’den oluşur ve web uygulamalarına yüksek performans sağlamaktadır. Bu yazıda, IndexedDB’yi nasıl kullanacağımızı, verileri nasıl depolayacağımızı ve nasıl sorgulayacağımızı öğreniyoruz.
IndexedDB Genel Bakış
IndexedDB, NoSQL veritabanlarından biridir ve JavaScript ile kullanılabilir. Bu veritabanı, key-value çiftlerini (anahtar-değer) depolama modelini kullanır. IndexedDB’nin avantajı, web uygulamalarının verilerini yerel olarak depolayarak kullanıcılara yüksek performans sağlamasıdır.
IndexedDB, modern web tarayıcılarında bulunan bir API olarak sunulur. Bu nedenle, web tarayıcısı uyumlu olan her platform için kullanılabilir. IndexedDB, kullanıcıların internet erişimi olmadığında da çalışabilmesi için dizayn edilmiştir.
IndexedDB kimlik doğrulama, şifreleme veya veri sıkıştırma gibi özellikleri sunmaz, ancak web uygulamamızın gereksinimlerini karşılamak için bu özellikleri kullanabiliriz.
IndexedDB’ye Veri Ekleme
IndexedDB’de veri eklemek için, verileri bir object store’a eklememiz gerekir. Object store, IndexedDB’de verileri işlemek için kullanılan bir depolama mekanizmasıdır. Object store, verileri anahtar-değer çiftleri olarak depolar. Bu anahtar-değer çiftleri, anahtarların verileri bulmak için kullanıldığı indexed olabilir.
Object store’lar, verileri ilişkisel bir veritabanındaki tablolara benzer şekilde depolar. Her object store, depolanan veriler için bir anahtar sağlar ve her anahtar benzersiz olmalıdır.
Veri eklemek için, önce bir transactions başlatmalıyız. Transactions, IndexedDB’nin temel özelliklerinden biridir ve birden fazla işlemi birleştirir. Transactions kullanarak, obje store’lar ve index’ler üzerinde okuma, yazma ve silme işlemlerini gerçekleştiririz.
Transaction başlatmak için aşağıdaki kodu kullanabiliriz:
let transaction = db.transaction([objectStoreName], readwrite”);
Burada, db.transaction() yöntemini kullanarak bir transaction aldık. İlk parametre, verilerin depolandığı object store’un ismidir. İkinci parametre, transaction’ın okuma veya yazma işlemleri için kullanılacağını belirtir. Biz “readwrite” kullanarak, transaction’ı hem okumak hem de yazmak için ayarladık.
Transaction oluşturduktan sonra, verileri eklediğimiz object store’u seçmeliyiz. Bunun için aşağıdaki kodu kullanabiliriz:
let objectStore = transaction.objectStore(objectStoreName);
Burada, transaction üzerinde object store’un özelliklerine erişmek için objectStore değişkenini kullanıyoruz. “objectStoreName”, seçilen object store’un ismidir.
Veri eklemek için, object store’un add() veya put() yöntemlerini kullanabiliriz. add() yöntemi, veriyi object store’a yeni bir anahtarla ekler. put() yöntemi ise, eğer veri nesnesi o anahtarda zaten varsa, veriyi günceller. Aşağıdaki örnekte, add() yöntemini kullanarak veri ekleyelim:
let transaction = db.transaction([objectStoreName], readwrite”);
let objectStore = transaction.objectStore(objectStoreName);
let user = {
id: 1,
name: John Doe,
age: 30
};
let request = objectStore.add(user);
request.onsuccess = function(event) {
console.log(Kullanıcı başarıyla eklendi.);
};
Veri silmek için, silinecek verinin anahtarını kullanarak delete() yöntemini kullanabiliriz:
let transaction = db.transaction([objectStoreName], readwrite”);
let objectStore = transaction.objectStore(objectStoreName);
let request = objectStore.delete(id);
request.onsuccess = function(event) {
console.log(Kullanıcı başarıyla silindi.);
};
IndexedDB’de veri güncelleme
IndexedDB’de veri güncellemek için put() yöntemini kullanabiliriz. Eğer güncellenecek veri object store’da zaten varsa, put() yöntemi otomatik olarak veriyi günceller, aksi takdirde veri object store’a eklenir.
Aşağıdaki kod, put() yöntemini kullanarak verileri güncelleyen bir örnek kod örneği:
let transaction = db.transaction([objectStoreName], readwrite”);
let objectStore = transaction.objectStore(objectStoreName);
let user = {
id: 1,
name: Jane Doe,
age: 32
};
let request = objectStore.put(user);
request.onsuccess = function(event) {
console.log(Kullanıcı güncellendi.);
};
IndexedDB’de veri sorgulama
IndexedDB’de verileri sorgulamak için, bir index kullanırız. İndeksler, object store’da depolanan verilerin bir sıralamasını tutar. İndeksler, verileri daha hızlı sorgulamamızı sağlar.
IndexedDB’de bir index oluşturmak için, createIndex() yöntemini kullanabiliriz. createIndex() yönteminin ilk parametresi, index’in adıdır. İkinci parametre, object store üzerindeki depolama mekanizmasını (örneğin, bir property) belirtir. Üçüncü parametre, index’in benzersiz olup olmayacağını belirler.
Aşağıdaki örnek kod sorgulamak için bir index oluşturma işlemi göstermektedir:
let objectStore = db.createObjectStore(users, {keyPath: id});
objectStore.createIndex(nameIndex, name, {unique: false});
createObjectStore() yöntemi, yeni bir object store oluşturur. buradaki “users” ismi, oluşturulacak object store’ın ismidir.
Daha sonra, createIndex() yöntemi kullanarak bir index oluştururuz. Bu index, “nameIndex” olarak adlandırılacak. İkinci parametre, verilerimizi indexlemek için kullanacağımız property’dir. Burada, “name” property’si kullanılmıştır. Ve son olarak, üçüncü parametre, index’in unique olup olmayacağını ayarlar.
Index’i kullanarak sorgu yapmak için, aşağıdaki kod kullanılabilir:
let transaction = db.transaction([users], readwrite);
let objectStore = transaction.objectStore(users);
let index = objectStore.index(nameIndex);
let request = index.getAll(John);
request.onsuccess = function(event) {
console.log(John isimli tüm kullanıcıların listesi: , request.result);
};
Burada, transaction objesi alındıktan sonra, object store ve index belirlendi. Sonrasında, sadece ismi “John” olan kullanıcılar gibi bir koşul belirleyerek index üzerinde bir sorgu çalıştırdık.
IndexedDB JavaScript ve Web Teknolojilerindeki Önemi
IndexedDB’nin önemi, asenkron bir API olmasıdır. Asenkron programlama, web uygulamalarında çok önemlidir. IndexedDB, tüm verileri yerel olarak depolayarak, web uygulamalarının performansını büyük ölçüde artırabilir. Bununla birlikte, IndexedDB, verileri yönetmek için birçok işlevsellik sunar ve bu sayede verileri daha yönetilebilir hale getirir. Web uygulamalarınız için, IndexedDB, verileri yerel olarak depolamak istiyorsanız en iyi seçeneklerden biridir.


Firma Web Siteniz Var mı?

Mükemmel Bir Firma Web Siteniz Olsun, Bugün Kullanmaya Başlayın

*256 Bit SSL Sertifikası * Full Mobil Uyumlu * Full SEO Uyumlu
İsterseniz Mobil Uygulama Seçeneğiyle


IndexedDB yerel depolama web uygulamaları NoSQL key-value object store transactions add put delete createIndex index asenkron programlama performans yönetilebilir