2012-02-24 5 views
0

내가 뭘 잘못하고있어? ExecuteSql은 오류를 발생시키지 않지만 새로운 항목은 실제로 테이블에 삽입되지 않습니다. 새 항목이 데이터베이스에 삽입되지 않는 이유는 무엇입니까?

// connection 

var shortName = 'resultsDB'; 
     var version = '1.0'; 
     var displayName = 'QuizResultsDB'; 
     var maxSize = 655360; 
     localDB = window.openDatabase(shortName, version, displayName, maxSize); 

// tables are created succesfully 

createTables: function(){ 

     localDB.transaction(function(tx){ 

      // add not null to email 
      var query = 'CREATE TABLE IF NOT EXISTS results(User_ID INTEGER PRIMARY KEY, Name VARCHAR(255) NOT NULL, CompanyName VARCHAR(255) NOT NULL, EmailAddr VARCHAR(255) NOT NULL, TimeCount INTEGER NOT NULL, ErrorsCount INTEGER NOT NULL)'; 
      tx.executeSql(query, [], function(tx, data){ 
        }, function(tx, error){ 
        //alert('Database table creation error' + error.message + '(' + error.code + ')'); 
       }); 
     }); 
    }, // -createTables 

는 //

localDB.transaction(

       function(tx){ 

        var query = 'INSERT INTO results(Name, CompanyName, EmailAddr, TimeCount, ErrorsCount) VALUES(?, ?, ?, ?, ?)'; 

         tx.executeSql(query, [$.cookie('name'), $.cookie('companyName'), $.cookie('email'), parseInt($.cookie('timeNeeded')), parseInt($.cookie('errorsCount'))], function(tx, data){ 
        // no error thrown 

         }, function(tx, error){ 
         alert("Error saving results to local database " + error.message); 
        }); 
+0

"쿼리"변수에 정적 값을 추가하고 삽입되었는지 여부와 같이 매개 변수를 전달하지 않고 삽입하려고 시도 했습니까? 오류를 분리하려고 시도하십시오 ... – mohammedn

답변

0

당신이 당신의 거래에 커밋 할 기억나요 행을 삽입하려고?

+0

executeSql이 그렇게하지 않습니까? 나는 html5 로컬 데이터베이스에 익숙하지 않으므로 미안하지만 어리석은 질문 인 것처럼 보인다.) –

+0

걱정하지 마십시오, 아무런 질문도 멍청하지 않습니다.) 솔직하게 한번도 사용 해본 적이 없으며, 나는이 문제를 여러 번 보았고 항상 문제가 누락 된 원인을 돕고 싶습니다. 그래서 그것은 단지 힌트 일뿐입니다. mohammedn 제안을 시도하는 것을 잊지 마십시오. – Diogo

관련 문제