sabato 8 ottobre 2011

Query in QtSQL

Ho appena perso un paio di giorni cercando di effettuare una semplice query su un database utilizzando le ottime librerie Qt, nello specifico il modulo QtSQL. Il codice in questione è il seguente:


QSqlQuery query;
query.prepare("SELECT id FROM ':tableName' WHERE name=':recordName'");
query.bindValue(":tableName", tableName);
query.bindValue(":recordName", recordName);
query.exec();

Simpaticamente la query ritornava sempre lo stesso errore:

query error:  Parameter count mismatch 

In sintesi, NON è possibile effettuare il bindValue del nome della table su cui vogliamo effettuare la query.

A questo punto le soluzioni sono due, possiamo arrenderci e scolpire il nome della table nella stringa:

query.prepare("SELECT id FROM nations WHERE name=':recordName'");

oppure raggirare il prepare inserendo il nome della tabella come QString ed effettuare il bind solo del parametro che ci interessa:

query.prepare("SELECT id FROM '"+tableName+"' WHERE name=':recordName'");

Read more...

lunedì 1 agosto 2011

Sviluppare per Android

Ho iniziato a sviluppare per android da diverso tempo, prima mi sono avvicinato ad AndEngine ma poi per caratteristiche e performance ho deciso di spostarmi su libGDX il vantaggi principali sono la possibilità di realizzare l'applicazione in versione desktop nativa e poi con pochissime modifiche portare il progetto direttamente sul cellulare, cosa che riduce notevolmente i tempi morti dello sviluppo nell'attesa che l'app venga installata sul cellulare ad ogni avvio. Poi c'è il miglior wrapper per box2d (libreria per la simulazione della fisica in 2d) realizzata su android, al punto che quasi tutti gli altri engine utilizzato il wrapper di libGDX! Ottima documentazione, esempi e community, che dire, correte a provarla!

Read more...

About This Blog

  © Blogger template PingooIgloo by Ourblogtemplates.com 2009

Back to TOP