API de base de données locale – obsolète quelle est l'alternative?

Le DB DB local basé sur SQLite est en baisse. Selon w3c, il faut remplacer indexedDB. Mais IndexedDB API est toujours en cours, donc pas encore de mise en œuvre. Pour une application qui nécessite un stockage db massif … et pour l'instant; Quelle est l'alternative? Quelle serait la preuve la plus future?

Le stockage local n'est pas une option car j'ai besoin de stocker des données structurées (relationnelles), et beaucoup de celles-ci. Les alternatives basées sur le cloud sont également hors de portée. J'ai besoin de quelque chose de local.

Je dirais que indexeddb est le chemin à parcourir. IE, FF et chrome le supportent déjà, mais pour les appareils mobiles, c'est toujours un enfer. Je vous conseillerais de rester avec Websql pour l'instant, je pense que Phonegap continuera à le soutenir pendant un certain temps.

Le problème avec la spécification était qu'il n'existait pas de manière indépendante de faire une requête. Chaque fournisseur a utilisé SQLite, mais une spécification ne peut pas être construite sur un seul produit, ce qui serait très dangereux. De même, dans la plupart des cas, différents fournisseurs db signifient différents dialectes SQL. Cela est également en contradiction avec un mode de travail standard. Cela signifierait que vous devriez vérifier quel db vous travaillez, puis utiliser un dialecte différent. C'est pourquoi ils ont décidé d'utiliser une API uniforme appelée indexeddb.

Tous les navigateurs qui utilisent une base de données comme SQL lite pour stocker les données uniquement dans l'interface à interroger sont l'API indexeddb, de sorte que indexeddb ressemble à un odbc. C'est seulement très simple et mince. Si vous souhaitez en savoir plus sur indexeddb, jetez un oeil à mon blog. J'ai plusieurs articles de blog à ce sujet. Celui-ci est bon pour commencer. Il explique les bases de indexeddb.

Le stockage local n'est pas une option car j'ai besoin de stocker des données structurées (relationnelles), et beaucoup de celles-ci

J'ai posé des questions similaires au passé, à un moment donné, j'ai renoncé à essayer de trouver une solution native. Je finis par utiliser ce plugin .

Les avantages sont les suivants:

  1. Vous ne serez pas limité par la limite de quota sur la plate-forme iOS (~ 5Mb) lors de l'utilisation de WebSQL.
  2. Vous pouvez distribuer des bases de données pré-peuplées. (Je sais qu'il existe une solution de contournement pour WebSQL, mais ça ne marche pas toujours).
  3. Vous pouvez chiffrer votre base de données. (Je ne sais pas si vous avez besoin de cela)
  4. Il n'y a pas de problème de persistance comme mentionné ici .

Les inconvénients sont les suivants:

  1. Il n'y a pas encore de mise en œuvre pour Windows. Vous pourriez penser à écrire votre propre plugin pour Windows.
  2. Avec Phonegap 2.1, ils ont commencé à prendre en charge ARC sur la plate-forme iOS. Dans la mesure où j'ai testé, le plugin ne prend pas en charge ARC pour le moment. Vous devrez l'adapter.

Pourquoi ne pas essayer l' enveloppe IndexedDB de ma propre bibliothèque open source? Il fonctionne à la fois ancien et nouveau standard de l'API IndexedDB ainsi que d'excellents retombées sur WebSQL. L'API wrapper est très indexedDB API centric et prévoit soutenir toutes les fonctionnalités.