2013-03-21 59 views
1

我正在開發一個應用程序安裝後第一次創建訪問數據庫時使用phonegap/coredava APP我無法訪問數據庫,但第二次運行的一切工作很好我該如何解決這個問題我的javascript代碼是低於第一次運行sqlite之後應用程序安裝問題與phonegap/coredava

var dbsize=4*1024; 
    document.addEventListener("deviceready", onDeviceReady, false); 
    var dbShell = window.openDatabase("mydb", "1.0", "my db", dbsize); 
    function onDeviceReady(){ 
     dbShell.transaction(defaultPopulatedb,errorDF,successDF); 
    } 
    function defaultPopulatedb(tx){ //creating tables for the first time 
    tx.executeSql('CREATE TABLE IF NOT EXISTS Userlocation (id INTEGER PRIMARY KEY AUTOINCREMENT, Location TEXT NOT NULL, Locationvalue TEXT NOT NULL)',[],checkfirst,errorTB); 
    } 
    function checkfirst(tx) 
    { 
    tx.executeSql('SELECT * FROM Userlocation',[],chevals,errorDFS);  } 
    } 
    function chevals(tx,result) 
    {  
    var len =result.rows.length; 
     if(!len){ 
     tx.executeSql('INSERT INTO Userlocation(Location,Locationvalue) VALUES ("default","default")',[],added,erdf); 
     } 
    } 
    function errorDFS() 
    { 
    alert("error"); 
    } 
    function added() 
    { 
    alert("added"); 
    } 
    function erdf() 
    { 
    alert("error adding default"); 
    } 
    function errorTB() 
    { 
    alert("error table"); 
    } 

回答

0

我也遇到過這個問題。你可以簡單地嘗試{...} catch(ex){...}並忽略第一個異常。

實際上,there是一個很好的數據訪問框架,用於phonegap。

相關問題