indexedDB unbekannter Inhalt auslesen


strukturart

Erfahrenes Mitglied
#1
Hallo,

ich habe noch keine Erfahrung mit dem Umgang von Datenbanken.

Wie kann ich aus einer IndexedDB den Inhalt auslesen wenn ich nur den Namen aber nicht die Struktur der DB kenne ?
Folgendes habe ich versucht:

Javascript:
var db;
// Let us open our database
var DBOpenRequest = window.indexedDB.open("b2g-calendar", 1);

DBOpenRequest.onsuccess = function(event) {

  db = DBOpenRequest.result;   



  var transaction = db.transaction(["b2g-calendar"], "readonly");
  var objectStore = transaction.objectStore('b2g-calendar');

  objectStore.openCursor().onsuccess = function(event) {
    var cursor = event.target.result;
    if(cursor) {
     alert(cursor.value)
      
      alert(cursor.primaryKey);
      cursor.continue();
    } else {
      console.log('Entries all displayed.');
    }
  };

};
keins der Alert erscheint.
Ist es richtig das cursor wie eine Schleife funktioniert ?

Danke fürs lesen.


/John
 

EuroCent

Erfahrenes Mitglied
#2
Ich empfehle Dir mal alles stück für Stück durch zu gehen :)
Statt mit Alerts zu arbeiten, empfiehlt es sich mit "console.log()" zu arbeiten.

Javascript:
var db;
// Let us open our database
var DBOpenRequest = window.indexedDB.open("b2g-calendar", 1);

console.log([DBOpenRequest]);

DBOpenRequest.onsuccess = function(event) {

  db = DBOpenRequest.result;   

    console.log([db]);

  var transaction = db.transaction(["b2g-calendar"], "readonly");
    
    console.log([transaction]);
    
  var objectStore = transaction.objectStore('b2g-calendar');
    
    console.log([objectStore]);

  objectStore.openCursor().onsuccess = function(event) {
    var cursor = event.target.result;
      console.log([cursor]);
      
    if(cursor) {
     alert(cursor.value)
      
      alert(cursor.primaryKey);
      cursor.continue();
    } else {
      console.log('Entries all displayed.');
    }
  };

};
Das hier schon gelesen: Verwendung von IndexedDB
 

strukturart

Erfahrenes Mitglied
#3
@EuroCent danke für deine Hilfe.

Ich versuche ein App für das FirefoxOS zu schreibe.
Jedoch kann ich auf WebIDE keine Information zur IndexedDB finden.

der Error Output ist:

Javascript:
Error:
NotFoundError: The operation faild because the request database object could not found.
Bedeutet wohl die DB existiert nicht oder ich habe nicht die nötigen Rechte.
 

Neue Beiträge