Question

J'ai une webapp que je construis, qui vient de commencer avec SQLite. Je suis en mesure de créer ma forme, ouvrez la base de données que j'ai créé, créez la table et les champs que j'ai besoin, et de saisir des données dans les champs.

Maintenant, je suis en train de relire les données avec une instruction SELECT, pour l'afficher sur l'écran et que la liste des colonnes. Je ne connais pas la syntaxe pour la commande SELECT statemnt en javascript ou HTML5 au-delà

« SELECT * FROM MyTable » ... Je sais que cela peut être fait, juste besoin d'aide avec la syntaxe d'obtenir les résultats sur l'écran.

Je commence par cela.

   

var db = window.openDatabase('TabOrder', '', 'Bar Tab Orders', 2500000);

 function insertDrinks(category, drinkname, our_cost, cust_cost){
  db.transaction(function(tx){
   tx.executeSql('INSERT INTO Drinks (category, drinkname, our_cost, cust_cost) VALUES (?, ?, ?, ?)', [category, drinkname, out_cost, cust_cost]);
  });
 }

 $(document).ready(function() {
  db.transaction(function(tx) {
   tx.executeSql('CREATE TABLE IF NOT EXISTS Drinks(id INTEGER PRIMARY KEY Autonumber, category TEXT, drinkname TEXT, our_cost FLOAT(6,2), cust_cost FLOAT(7,2))', []);
  });
 });
 

J'ai plus tard cette ....



 View Cat / Drink List
 
 function readDrinks(id, category, drinkname, our_cost, cust_cost){
  db.transaction(function(tx) {
   tx.executeSql('SELECT * FROM Drinks', [id, category, drinkname, our_cost, cust_cost]);
  });
 document.write(id, category + " are the categories.");
 }
 


Je viens d'essayer de reconstituer ensemble, et ne savent pas ce que je fais avec elle au-delà du SQL de base.

Toute aide est grandement appréciée ... ce qui est un côté client DB, pas une connexion à Internet.

merci ....

Était-ce utile?

La solution

Voir la spécification et ce Apple tutoriel . En bref, vous devez ajouter des données et des rappels d'erreur. En outre, vous devriez être un tableau vide (ou null) parce que votre requête n'a pas de paramètres.

db.transaction(function(tx) {
   tx.executeSql('SELECT * FROM Drinks', 
                 [],
                 function(tx, results)
                 {
                   // results is a http://dev.w3.org/html5/webdatabase/#sqlresultset .  
                   // It has insertId, rowsAffected, and rows, which is
                   // essentially (not exactly) an array of arrays. 
                 },
                 function(tx, error)
                 {

                 }
   );
});

Il vous est à si vous souhaitez utiliser des fonctions nommées ou anonymes.

EDIT: J'ai fait une démonstration de travail à http://jsfiddle.net/WcV6Y/7/. Il est testé dans Chrome 5.0.375.70.

Autres conseils

essayer quelque chose comme ceci

tx.executeSql('SELECT * FROM foo', [], function (tx, results) {
             var len = results.rows.length;
             for (var i = 0; i < len; ++i) {
                var obj = results.rows.item(i);
                alert(obj);
              }
          });

voir aussi ce tutoriel pour faire court http://html5doctor.com/introducing-web-sql -Bases de données /

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top