Check if a table exists
You could fix it like this:
QString sqlQuery = QString("SELECT name FROM sqlite_master WHERE type =:table AND name = '%1' ").arg(tableName);query.prepare(sqlQuery);query.bindValue(":table", "table");query.exec();
But why mix bind values and "dumb" string replacement?
QString sqlQuery = QString("SELECT name FROM sqlite_master WHERE type =:table AND name = :tablename ");query.prepare(sqlQuery);query.bindValue(":table", "table");query.bindValue(":tablename", tableName);query.exec();
This solved it.Thanks Mat.
QSqlQuery query; QString tableName = "structure"; QString sqlQuery = QString("SELECT name FROM sqlite_master WHERE type =:table AND name = '%1' ").arg(tableName); query.prepare(sqlQuery); query.bindValue(":table", "table"); query.exec(); int fieldNo = query.record().indexOf("name"); while (query.next()) { QString _name = query.value(fieldNo).toString(); qDebug() << "Table Name" << _name ; }