Maison  >  Article  >  interface Web  >  Résumé d'apprentissage de Web SQL en HTML5

Résumé d'apprentissage de Web SQL en HTML5

青灯夜游
青灯夜游avant
2018-11-13 09:35:233198parcourir

Le contenu de cet article est de présenter le résumé d'apprentissage Web Sql de HTML5, afin que chacun puisse comprendre certaines connaissances connexes de Web Sql. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il vous sera utile.

Dans les systèmes ou applications Web, il est souvent nécessaire de stocker certaines données localement. Le premier moyen de stocker des données sur le client était le cookie (bien entendu, les cookies sont principalement utilisés pour sauvegarder les données). statut de l'utilisateur. Vous pouvez effectuer un travail de sauvegarde des données locales pendant votre temps libre), mais en fait, cela ne convient pas à la sauvegarde des données locales du client. Il y a plusieurs raisons :

1. fois que le serveur est demandé Cela augmentera la consommation de trafic inutile, car chaque fois que le serveur est demandé, un cookie sera envoyé au serveur.

2. Les règles de stockage des données des cookies ne sont pas si simples à utiliser et la structure n'est pas assez claire.

3. Le point le plus important est que la capacité de stockage des cookies est extrêmement petite. La longueur de chaque cookie ne peut pas dépasser 4 Ko. S'il dépasse les premières données de cookie stockées, il sera tronqué. évidemment pas assez.

Avec le développement du HTML5, localStorage et sessionStorage sont apparus plus tard :

localStorage : stockage permanent, peu importe le temps qu'il faut pour entrer dans le page ou pages à nouveau Les données stockées peuvent être obtenues à partir du site où elles se trouvent (peuvent être supprimées à l'aide de la méthode clearI ou removeItem).

sessionStorage : Stockage temporaire, les données enregistrées seront automatiquement effacées à la fermeture de la page.

En fait, lorsque vous travaillez ou développez vos propres projets, ces deux objets sont les plus utilisés. Au moins pour l'instant, ces deux objets peuvent encore répondre aux besoins de stockage local de la plupart des projets, même si la structure de stockage est toujours. pas assez clair. Interroger les données stockées localement est encore trop simple.

Maintenant, principalement pour résumer,

La nouvelle API en HTML5-->Technologie de base de données locale Web Sql, l'API de base de données Web Sql ne fait pas réellement partie de la spécification HTML5, c'est une spécification indépendante, il peut utiliser la syntaxe fondamentalement cohérente avec le langage SQL pour ajouter, supprimer, modifier et interroger la base de données locale, afin que les développeurs ayant une expérience en développement back-end puissent facilement démarrer (il convient de souligner que HTML5 a abandonné le Web Le travail de spécification de la base de données SQL sur cette spécification a été interrompu), et même ainsi, il est essentiellement pris en charge par la plupart des navigateurs. Présentons maintenant son utilisation :

Créer une base de données WebSql :

openDatabase(数据库名,数据库版本号,描述,数据库大小,数据库创建成功的回调);
var mydb = openDatabase('myTeatDatabase',1,'this a Web Sql Database',1024*1024,function(){
     //数据库创建成功的回调,可省略
});
Remarque : Cette méthode renvoie un objet d'accès à la base de données, lorsque le la base de données créée existe déjà, cette méthode ouvre directement la base de données.

Créer une transaction :

mydb.transaction(function(tx){
    //该方法有一个事务对象参数供使用,该对象上有一系列为数据库增删改查的方法。
});

Effectuer une opération :

tx.executeSql(执行数据库操作的sql语句,参数,数据库操作执行成功的回调,数据库操作执行失败的回调);

Opérations spécifiques à la base de données :

Créer une table de données :

tx.executeSql('create table if not exists table1 (id unique,name)', [], function(tx, result) { 
	//成功回调
	},function(error){
         //失败回调
	});
Remarque : Cette instruction signifie créer une table de données table1. Lorsque cette table n'existe pas dans la base de données, si "if not exist" n'est pas ajouté à l'instruction, lorsque la table de données que vous souhaitez créer existe déjà dans la base de données. Parfois, une erreur se produira. être signalé.

Supprimer une table de données :

tx.exexcteSql('drop table table1',[],function(tx,result){
      //删除成功时的回调
      },function(error){ 
         //删除失败时的回调
      });

Ajouter une donnée à la table de données :

tx.executeSql('insert into table1 (id,name) values (1,'小明')',[],function(tx,result){
            //添加数据成功时的回调
            },function(error){
                  //添加数据失败时的回调
            });

Supprimer une ou plusieurs données dans le tableau de données :

tx.executeSql('delete from table1 where id=1',[],function(tx,result){
//删除成功时的回调
},function(error){
    //删除失败时的回调
});
ou :

tx.executeSql('delete from table1 where id=?',[1],function(tx,result){
//删除成功时的回调
},function(error){
    //删除失败时的回调
});

Mettre à jour le données dans la table de la base de données Une donnée : L'attribut rows du paramètre utilise les données renvoyées par la requête.

Cet exemple n'est que l'instruction de requête la plus simple. Si vous avez besoin de requêtes plus complexes, vous pouvez vous référer à l'instruction sql.
tx.executeSql('updata table1 set name="小红" where id=1',[],function(tx,result){
   //数据更新成功时的回调
   },function(error){
       //数据更新失败时的回调
   });

Résumé :

tx.executeSql('select * from table',[],function(tx,result){
//查询成功时的回调
},function(error){
  //查询失败时的回调
});

Pour résumer brièvement, en fait, cette API de base de données est relativement simple. Tous les ajouts, suppressions, modifications et requêtes nécessitent le. création d'une transaction. Effectuez toutes les opérations sur l'objet de transaction. Actuellement, l'API ne prend pas en charge la suppression de l'intégralité de la base de données, mais nous pouvons effacer la base de données en supprimant toutes les tables de données de cette base de données pour obtenir un effet similaire.

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer