2014-02-21 34 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. 尝试做饭您在不同的平台项目,看看它的工作

好运