Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql QSqlDatabase从表中删除所有行_Mysql_Qt_Qsqlquery_Qsqldatabase - Fatal编程技术网

Mysql QSqlDatabase从表中删除所有行

Mysql QSqlDatabase从表中删除所有行,mysql,qt,qsqlquery,qsqldatabase,Mysql,Qt,Qsqlquery,Qsqldatabase,嗨,我需要删除QSqlDatabase表中的所有行,我的代码看起来 QString dbName = QDir::currentPath()+"/DB"; QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE"); db.setDatabaseName(dbName); if(db.open()){ QSqlQuery query(db); query.prepar

嗨,我需要删除QSqlDatabase表中的所有行,我的代码看起来

      QString dbName = QDir::currentPath()+"/DB";
      QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
      db.setDatabaseName(dbName);
      if(db.open()){
        QSqlQuery query(db);
        query.prepare("truncate fRecogtable"); // this not working
        //query.prepare("Delete from fRecogtable"); //this working

        if(!query.exec() )
          qDebug() << "deletion failed";
        query.clear();
        db.close();
        }
谢谢
Haris

在PyQt中,这个问题通过
query.exec('TRUNCATE my_table;')
解决,您不需要
prepare()

只需执行
TRUNCATE table fRecogtable
我也尝试过了,但它也不起作用(“从SQLITE_序列中删除,其中name='table_name'”``对我不起作用。
query.prepare("Delete from fRecogtable");
 if(!query.exec() )
    qDebug() << "deletion failed";

 query.clear();
 query.prepare("DELETE FROM SQLITE_SEQUENCE WHERE name='fRecogtable'");
 if(!query.exec() )
     qDebug() << "deletion failed";