Maison > Article > interface Web > Introduction détaillée HTML5 à la base de données Web SQL
L'API Web SQL Database ne fait pas partie de la spécification HTML5, mais il s'agit d'une spécification indépendante qui introduit un ensemble d'API permettant d'utiliser SQL pour faire fonctionner les bases de données client.
Méthodes de base
OpenDatabase - Créer un objet de base de données en utilisant une base de données existante ou une nouvelle base de données
Transaction - Capable de contrôler une chose , et effectuez une validation ou une restauration en fonction de cette situation
executeSql-exécutez l'instruction SQL réelle
ouvrez la base de données
//用openDatabase()方法打开已存在的数据库,如果数据库不存在,则会创建一个新的数据库 var db = openDatabase('mydb', '1.0', 'Test DB', 2 * 1024 * 1024);
La description des cinq paramètres correspondant à la méthode openDatabase() :
Nom de la base de données
Numéro de version
Texte de description
Taille de la base de données (octets)
Créer un rappel (facultatif)
Le cinquième paramètre, le rappel de création sera appelé après la création de la base de données.
Créer un tableau
var db = openDatabase('mydb', '1.0', 'Test DB', 2 * 1024 * 1024); db.transaction(function (tx) { tx.executeSql('CREATE TABLE IF NOT EXISTS LOGS (id unique, log)'); });
Insérer des données
var db = openDatabase('mydb', '1.0', 'Test DB', 2 * 1024 * 1024); db.transaction(function (tx) { tx.executeSql('CREATE TABLE IF NOT EXISTS LOGS (id unique, log)'); tx.executeSql('INSERT INTO LOGS (id, log) VALUES (1, "博客园")'); tx.executeSql('INSERT INTO LOGS (id, log) VALUES (2, "www.cnblogs.com")'); });
Vous pouvez également insérer des données à l'aide de valeurs dynamiques
//e_id 和 e_log 是外部变量,executeSql 会映射数组参数中的每个条目给 "?" var db = openDatabase('mydb', '1.0', 'Test DB', 2 * 1024 * 1024); db.transaction(function (tx) { tx.executeSql('CREATE TABLE IF NOT EXISTS LOGS (id unique, log)'); tx.executeSql('INSERT INTO LOGS (id,log) VALUES (?, ?)', [e_id, e_log]); });
Lire les données
var db = openDatabase('mydb', '1.0', 'Test DB', 2 * 1024 * 1024); db.transaction(function (tx) { tx.executeSql('CREATE TABLE IF NOT EXISTS LOGS (id unique, log)'); tx.executeSql('INSERT INTO LOGS (id, log) VALUES (1, "博客园")'); tx.executeSql('INSERT INTO LOGS (id, log) VALUES (2, "www.cnblogs.com")'); }); db.transaction(function (tx) { tx.executeSql('SELECT * FROM LOGS', [], function (tx, results) { var len = results.rows.length; msg = "<p>查询记录条数: " + len + "</p>"; document.querySelector('#status').innerHTML += msg; for (i = 0; i < len; i++){ msg = "<p><b>" + results.rows[i].log + "</b></p>"; } }, null); });
Supprimer des enregistrements
db.transaction(function (tx) { tx.executeSql('DELETE FROM LOGS WHERE id=1'); });
La suppression de données peut également être dynamique
db.transaction(function(tx) { tx.executeSql('DELETE FROM LOGS WHERE id=?', [id]); });
Mettre à jour les enregistrements
tx.executeSql("UPDATE CC SET logname='www.baidu.com' WHERE id=2");
La mise à jour des données peut également être dynamique
tx.executeSql("UPDATE CC SET logname='www.baidu.com' WHERE id=?", [id]);
Remarque : Supprimer et modifier ne peuvent pas être placés dans le même exécutéSql que l'instruction de création de table. Il est préférable de les écrire séparément
Ce qui suit est. base de données construite
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!