首页 > 解决方案 > 如何正确地将 blob 数据插入表中

问题描述

我尝试在表中写入数据数组,但出现错误“参数计数不匹配”

auto query = new QSqlQuery(db);


request = QString("INSERT INTO items(id, type, data) VALUES"
                          "('%0', '%1', :bytes)").
                            arg(id).
                            arg(static_cast<int>(type));

// request: INSERT INTO items(id, type, data) VALUES('0', '512', :bytes)
query->prepare(request)); // ok
query->bindValue(":bytes", bytes); // bytes is qbytearray with data
query->exec(request) // error  Parameter count mismatch

标签: qtsqlite

解决方案


错误是我将原始请求提供给函数参数,它替换了执行“bindValue”函数的请求。

需要更换

query->exec(request);

经过

query->exec();

推荐阅读