2017-12-12 3 views
0

Hier schrieb ich den Code, um die Zeile der SQLite-Tabelle zu finden und wenn die ID der Zeile verfügbar ist, dann gibt false zurück und sonst wahr.Rückgabe wahr oder falsch in der SQL-Suche durch ID

Hier ist der Code für sie

function findPageID(pickId) 
{ 
    this.db.transaction(function(tx){ 
       tx.executeSql("SELECT pid FROM page WHERE pid="+pickId, [], function(tx, result) { 
        if(result) {       
         if(result.rows.length > 0){ 
          return false;  
         } 
         else 
         { 
          return true; 
         }              
        } 
       }) 
      }) 
} 

wenn ich versuche, undefinedconsole.log(findPageID(pickId));

seine Show zu verwenden, jemand kann mir eine Lösung

hier den vollständigen Code

function udatefetchPagedata() { 
$.ajax({ 
    url: syncPageURL, 
    dataType: "json", 
    success: function(data) { 
     console.log("The server returned " + data.length + " changes that occurred after "); 
     for (var ci in data) { 
      alert(findPageID(data[ci].pid)) 
      //if(findPageID(data[ci].pid)) 
      //{ 
      //callback(data);     
      //insertPage(data[ci].pid, data[ci].ptitle, data[ci].pcontent, data[ci].page_slug, data[ci].porder, data[ci].pagepub, data[ci].mobicon, data[ci].mobborder, data.length); 
      //setLastSyncPageDevice(); 
      //} 
     } 
    }, 
    error: function(model, response) { 
     //alert(response.responseText); 
    } 
}); 
} 

Antwort

1
finden

Sie sollten diezurückgeben 210 Objekt sowie tx.executeSql aus Funktion, fügen Sie So, bevor Sie den Funktionsaufruf

function findPageID(pickId) 
{ 
    return this.db.transaction(function(tx){ 
        return tx.executeSql("SELECT pid FROM page WHERE pid="+pickId, [], function(tx, result) { 
        if(result) {  
         if(result.rows.length > 0){ 
          return false;         
         } 
         else 
         { 
          return true; 
         }  
        } 
        else{ 
         return false; 
        } 
       }) 
      }) 
} 

Ich gehe davon aus, dass Ihre Abfrage-Code ohne Fehler läuft und Ergebnis erwartet werden!

+0

undefiniert Rückkehr – Raj

+0

haben Sie Ihre SQL-Anweisung überprüfen ordnungsgemäß ausgeführt und kehrt erwartetes Ergebnis? – programtreasures

+0

seine Rückkehr null – Raj

0
function findPageID(pickId) { 
    return new Promise((resolve, reject) => { 
    this.db.transaction(function(tx) { 
     tx.executeSql('SELECT pid FROM page WHERE pid=' + pickId, [], function(tx, result) { 
     if (result) { 
      if (result.rows.length > 0) { 
      resolve(false); 
      } else { 
      resolve(true); 
      } 
     } 
     }); 
    }); 
    }); 
} 

und nennen Sie es wie findPageID(pickId).then(flag => console.log(flag));

oder wenn Sie Rückruf

function findPageID(pickId, cb) { 
    this.db.transaction(function(tx) { 
    tx.executeSql('SELECT pid FROM page WHERE pid=' + pickId, [], function(tx, result) { 
    if (result) { 
     if (result.rows.length > 0) { 
      return cb(false); 
     } else { 
      return cb(true); 
     } 
     } 
    }); 
    }); 
} 

bevorzugen und nennen Sie es wie findPageID(pickId, (flag) => console.log(flag));

+0

beide Code Fehler – Raj

+0

Welcher Fehler? Kannst du es bitte hier einfügen? – langitbiru

Verwandte Themen