我在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”附近:语法错误无法执行语句...