2014-02-21 35 views
0

我試圖保存用戶輸入類別名稱,並單擊使用SQL在Qt Creator的一個按鈕後,上面寫着他們,我使用QT 5.2.0 Android version, Qt creator 3.0.0保存和讀取使用SQL

我已經創建了兩個功能,一個功能用於保存用戶輸入的內容,另一個功能用於讀取用戶輸入的內容並將其顯示在屏幕上。

這裏是我的代碼:

function saveCATs() { 
    var db = LocalStorage.openDatabaseSync("Cat", "1.0", 
     "Saving Categories File", 1000000); 

    db.transaction(function(tx) { 
     // Create the database if it doesn't already exist 
     tx.executeSql('CREATE TABLE IF NOT EXISTS Categories(Category TEXT)'); 

     // tx.executeSql('DELETE FROM Categories WHERE Category ="hello"'); 

     // Add (another) Category row 
     tx.executeSql('INSERT INTO Categories VALUES(?)', [textInput1.text]); 
    }) 
} 



function readCATs(){ 
    var db = LocalStorage.openDatabaseSync("Cat", "1.0", 
     "Saving Categories File", 1000000); 
    db.transaction(function(tx) { 
     // Show all added Categories 
     var rs = tx.executeSql('SELECT * FROM Categories'); 

     var r = "" 
     for(var i = 0; i < rs.rows.length; i++) { 
      r += rs.rows.item(i).Category + "\n" 
     } 
     return r 
    }) 
} 

saveCATs()功能時,在用戶點擊按鈕"submit"readCATs()功能被觸發時觸發按鈕"Read"

在這裏,用戶點擊是的代碼按鈕:

Rectangle { 
      id: rectangle8 
      x: 88 
      y: 222 
      width: 200 
      height: 200 
      color: "#ffffff" 
      opacity: 0 
      MouseArea { 
       anchors.fill: parent 
       onClicked: saveCATs() 

      } 
     } 


Rectangle { 
      id: rectangle9 
      x: 89 
      y: 271 
      width: 200 
      height: 200 
      color: "#ffffff" 
      opacity: 0 
      MouseArea { 
       anchors.fill: parent 
       onClicked:{ 
        parent.parent.state = "State2" 
        readCATs() 

       } 
      } 
     } 

但不幸的是,這段代碼不是窩我rking的,我不知道他們是什麼的一些原因,任何建議

THX

回答

0

什麼是您的目標平臺?因爲我知道:

  1. 只有SQLite是支持Android平臺(有待考證)
  2. 如果不添加,添加sql到您的.pro文件(Qt Creator的項目文件)QT+= sql
  3. 嘗試做飯您在不同的平臺項目,看看它的工作

好運