...
query.exec("insert into person values(104, 'Roberto', 'Robitaille')");
query.exec("insert into person values(105, 'Maria', 'Papadopoulos')");
...它们可以绑定在单个query.exec()中吗?
发布于 2012-03-17 09:00:36
我猜您正在尝试在批处理中执行您的查询。是的,qt支持这种情况。
bool QSqlQuery::execBatch ( BatchExecutionMode mode = ValuesAsRows )在批处理中执行先前准备的SQL查询。所有绑定参数都必须是变体列表。如果数据库不支持批处理执行,驱动程序将使用常规的exec()调用来模拟它。如果查询成功执行,则返回true;否则返回false。
QSqlQuery q;
q.prepare("insert into myTable values (?, ?)");
QVariantList ints;
ints << 1 << 2 << 3 << 4;
q.addBindValue(ints);
QVariantList names;
names << "Harald" << "Boris" << "Trond" << QVariant(QVariant::String);
q.addBindValue(names);
if (!q.execBatch())
qDebug() << q.lastError();http://doc.qt.io/archives/qt-4.7/qsqlquery.html#execBatch
https://stackoverflow.com/questions/9747862
复制相似问题