以下是sql语句
QString myQuery = "UPDATE myTable SET myAttr = :myAttr WHERE ID = 1";
//m_query is a QSqlQuery object pointer
m_query->prepare(myQuery);
QString value = "some value";
m_query->bindValue(":myAttr", QVariant(value)) ;
m_query->exec();
But when I print the executedQuery, it shows the value for **myAttr = ?**
执行不会引起任何关于bindValue()的抱怨。 任何人都知道这里发生了什么?我使用的是QT5.2.1 MinGW_32bits 提前谢谢。
答案 0 :(得分:1)
我使用以下方法解决了问题:
change the :myAttr to :MYATTR
并且在绑定值时,请遵循相同的格式。
m_query->bindValue(":MYATTR", QVariant(value)) **strong text**
我认为这对于较新版本的QTCreator来说是一个问题。