Die Web SQL -Datenbank -API ist eigentlich kein integraler Bestandteil der HTML5 -Spezifikation, sondern eine separate Spezifikation. Es verwendet eine Reihe von APIs, um die Datenbank des Clients zu manipulieren. Mainstream -Browser wie Safari, Chrome, Firefox und Opera haben bereits die Web -SQL -Datenbank unterstützt. Die Web -SQL -Datenbanken von HTML5 sind wirklich verlockend. Wenn Sie feststellen, dass Sie dieselbe Abfrageanweisung wie MySQL -Abfrage verwenden können, um die lokale Datenbank zu betreiben, finden Sie dieses Ding sehr interessant. Lassen Sie uns heute über die Web SQL -Datenbank -API von HTML 5 erfahren.
Im Folgenden wird ein Datenbank erstellt und geöffnet, eine Tabelle erstellt, Daten hinzufügen, Daten aktualisieren, Daten löschen und Tabellen löschen.
Stellen Sie zunächst drei Kernmethoden ein
1. Opendatabase: Diese Methode verwendet eine vorhandene Datenbank oder erstellt eine neue Datenbank, um ein Datenbankobjekt zu erstellen.
2. Transaktion: Diese Methode ermöglicht es uns, das Transaktionsausschuss oder Rollback gemäß der Situation zu steuern.
3. ExecutesQL: Diese Methode wird verwendet, um echte SQL -Abfragen auszuführen.
Schritt 1: Öffnen Sie die Verbindung und erstellen Sie die Datenbank
var database = Opendatabase ("Student", "1.0", "Student Tabelle", 1024 * 1024, Funktion () {});
if (! Datenbank) {
Alert ("Datenbankerstellung fehlgeschlagen!");
} anders {
Alert ("Datenbankerstellung erfolgreich!");
}
Erläutern Sie die Opendatabase -Methode öffnet eine vorhandene Datenbank, und wenn die Datenbank nicht vorhanden ist, kann sie auch eine Datenbank erstellen. Mehrere Parameter sind:
1. Datenbankname.
2. Die Versionsnummer ist derzeit 1.0. Egal was, es ist in Ordnung, wenn Sie es zu Tode schreiben.
3. Beschreibung der Datenbank.
4. Setzen Sie die Größe der Daten.
5. Rückruffunktion (kann weggelassen werden).
Erstellen Sie eine Datenbank für den ersten Anruf und stellen Sie dann eine Verbindung her.
Die erstellte Datenbank ist lokal mit dem Pfad wie folgt:
C:/Benutzer/Administrator/AppData/Local/Google/Chrome/Benutzerdaten/Standard-/Datenbanken/http_localhost_4987.
Die erstellte SQLite -Datenbank kann verwendet werden, um die Datei mit SQLITeSpy zu öffnen, und Sie können die Daten im Inneren sehen. SQLITEPY ist eine grüne Software. Sie können die Adresse auf Baidu oder den offiziellen SQLITePy -Download: SQLITePy herunterladen.
Schritt 2: Erstellen Sie eine Datentabelle
this.createTable = function () {
Database.transaction (Funktion (tx) {
tx.executesql (
"Erstellen Sie Tabelle, wenn nicht existiert Stu (id real eindeutig, nennen Sie Text)", "
[],,
Funktion (tx, result) {alert ('erfolgreicher Stu -Tabelle erstellt'); },
Funktion (tx, error) {alert ('STU -Tabelle erstellen fehlgeschlagen:' + error.message);
});
});
}
Erklären, es,
Die executesQL -Funktion hat vier Parameter, und ihre Bedeutung lautet:
1) repräsentiert die Abfragezeichenfolge, und die verwendete SQL -Sprache ist SQLite 3.6.19.
2) Fügen Sie Zeichenfolgendaten in die Abfrage ein, in der sich das Fragezeichen befindet.
3) Rückruffunktion, die beim Erfolg ausgeführt wird. Gibt zwei Parameter zurück: TX und das Ergebnis der Ausführung.
4) Eine Rückruffunktion, die beim Fehler ausgeführt wird. Gibt zwei Parameter zurück: TX und fehlgeschlagene Fehlermeldung.
Schritt 3: Ergänzung, Löschung, Änderung und Suche durchführen
1) Daten hinzufügen:
this.insert = function () {
Database.transaction (Funktion (tx) {
tx.executesql (
"In Stu (ID, Name) Werte einfügen (?,?)",
[id, 'xu mingxiang'],
function () {alert ('erfolgreich hinzufügen “); },
Funktion (tx, error) {alert ('Daten hinzufügen fehlgeschlagen:' + error.message);
});
});
2) Daten abfragen
this.Query = function () {
Database.transaction (Funktion (tx) {
tx.executesql (
"Wählen Sie * von Stu", [],
Funktion (TX, Ergebnis) {// erfolgreiche Rückruffunktion ausführen
// Mach was du tun willst, um hier zu resultieren .........
},
Funktion (TX, Fehler) {
alert ('Abfrage fehlgeschlagen:' + error.message);
});
});
}
Erklären Sie es
Die erfolgreich ausgeführte Rückruffunktion im obigen Code hat ein Parameterergebnis.
Ergebnis: Der abgefragte Datensatz. Sein Datentyp ist SQLResultset, genau wie das DataTable in C#.
Die Definition von SQLResultset lautet:
Schnittstelle sqlresultset {
Readonly Attribut Long InsertID;
Readonly Attribut lange Rows mitwirken;
Readonly Attribut sqlresultSetRowlist Zeilen;
};
Die wichtigste Eigenschaft - SQLResultSetRowlist -Zeilen sind die Zeilen des Datensatzes.
Zeilen haben zwei Eigenschaften: Länge und Gegenstand.
Erhalten Sie daher den Wert einer Zeile und einer Spalte des Abfrageergebnisses: Ergebnis.Rows [i] .Item [Fieldname].
3) Daten aktualisieren
this.update = function (id, name) {
Database.transaction (Funktion (tx) {
tx.executesql (
"Aktualisieren Sie SET SET NAME =? WO ID =?",
[Name, ID],
Funktion (TX, Ergebnis) {
},
Funktion (TX, Fehler) {
alert ('Update fehlgeschlagen:' + error.message);
});
});
}
4) Daten löschen
this.del = function (id) {
Database.transaction (Funktion (tx) {
tx.executesql (
"Löschen Sie von stu, wo id =?",
[Ausweis],
Funktion (TX, Ergebnis) {
},
Funktion (TX, Fehler) {
alert ('Deletion fehlgeschlagen:' + error.message);
});
});
}
5) Löschen Sie die Datentabelle
this.droptable = function () {
Database.transaction (Funktion (tx) {
tx.executesql ('Drop table stu');
});
}
Web SQL -Datenbank -Demo zum Hinzufügen, Löschen, Ändern und Überprüfen Sie sie schnell herunter.