Sqlite插入操作出错:接近“s”:语法错误无法执行语句

时间:2017-09-01 06:10:18

标签: c++ qt sqlite

我在DEBUG模式下找到Insert操作中的错误。但是我无法弄清楚错误的位置。 这是我的表架构:

QString CreateTable="CREATE TABLE History("
                        "hist_code VARCHAR(30) PRIMARY KEY,"
                        "input_data TEXT NOT NULL,"
                        "output_data TEXT NOT NULL)";
QString InsertIntoTable="INSERT INTO History (hist_code,input_data,output_data) "
                        "VALUES (%1,%2,%3);";

然后我成功创建了表History, 但什么时候插入操作。

void InsertHistory(const size_t& no_run){
    if(!db.isOpen())
        db.open();
    InputToString input2str(in_temp);
    OutputToString output2str(out_temp);

    QString histcode=QDateTime::currentDateTime().toString("yyyy-MM-dd")+QString::number(no_run,10);
    QString inputdata=input2str.getAll();
    QString outputdata=output2str.getAll();

    if (!query.exec(InsertIntoTable.arg(histcode,inputdata,outputdata)))
            QMessageBox::critical(0, QObject::tr("Insert Error"),
                                  query.lastError().text());
}

弹出的消息框说:“s”附近:语法错误无法执行语句...

0 个答案:

没有答案