C++ QSqlQuery插入字符

C++ QSqlQuery插入字符,c++,qt,insert,char,C++,Qt,Insert,Char,我试图在表的列中插入一个字符。而是插入字符的十进制代码。如何插入字符 详情: QString insertSql; insertSql .append("INSERT INTO ") .append(" table ") .append(" (direction) ") .append("VALUES (?)"); QSqlQuery update; update.prepare(insertSql); update.bindValue(0, 'F'); bo

我试图在表的列中插入一个字符。而是插入字符的十进制代码。如何插入字符

详情:

QString insertSql;
insertSql
    .append("INSERT INTO ")
    .append(" table ")
    .append(" (direction) ")
    .append("VALUES (?)");
QSqlQuery update;
update.prepare(insertSql);

update.bindValue(0, 'F');

bool ex = update.exec();
qDebug() << update.lastError().type() << endl;
qDebug() << update.lastError().databaseText() << endl;
qDebug() << update.lastError().driverText() << endl;
QString插入SQL;
插入式SQL
.附加(“插入”)
.append(“表格”)
.append(“(方向)”)
附加(“值(?));
QSqlQuery更新;
update.prepare(insertSql);
update.bindValue(0,'F');
bool ex=update.exec();

qDebug()在对
bindValue
的调用中,第二个参数是QVariant,但QVariant没有接受字符的构造函数。您的字符可能被转换为int,因为这是标准转换,而不是QChar。QVariant是整数类型,在
bindValue
期间转换为字符串

您可以尝试显式使用QChar:

update.bindValue(0, QChar('F'));