title: QSqlQuery with SQLite database: prepare + bindValue not updating table
body: <p>I'm having trouble with QSqlQuery: it's not updating my SQLite database.</p>
  
  <p>I initialize the database like this (which works fine):</p>
  
  <pre><code>myDB = QSqlDatabase::addDatabase("QSQLITE");
  myDB.setDatabaseName(QDir::homePath() + QDir::separator() + "file.db");
  myDB.open();
  
  if(!myDB.tables().contains("presets")) {
      myDB.exec("CREATE TABLE presets (id INTEGER PRIMARY KEY ASC, path TEXT);");
      for (int i=0; i&lt;10; i++)
          myDB.exec("INSERT INTO presets (path) VALUES ('n/a')");
  }
  </code></pre>
  
  <p>I have a QString array of values that I want to update into there.</p>
  
  <pre><code>QString presets[10];
  preset[0] = "foo";
  preset[1] = "bar";
  ...
  </code></pre>
  
  <p>I try to update the database with a for loop like this:</p>
  
  <pre><code>QSqlQuery qPreset(myDB);
  qPreset.prepare("UPDATE presets SET path=':path' WHERE id=':id';");
  for (int i=0; i&lt;10; i++){
      qPreset.bindValue(":path", presets[i]);
      qPreset.bindValue(":id", i+1);
      qPreset.exec();
  }
  </code></pre>
  
  <p>But nothing happens in the database and I don't get any error messages either. Any ideas why?</p>
  
  <p>Edit:</p>
  
  <p>This (ugly as it is) works perfectly fine though, so it's not the connection:</p>
  
  <pre><code>for (int i=0; i&lt;10; i++)
      myDB.exec("UPDATE presets SET path='" + presets[i] + "' WHERE id='" + QString::number(i+1) + "';");
  </code></pre>