#include "rep_dbthread.h" Rep_DBThread::Rep_DBThread(QObject *parent) : QThread(parent) { keep = false; sqlList2.clear(); } void Rep_DBThread::stop() { keep = false; } void Rep_DBThread::appendSql(QString sql) { sqlList2.append(sql); } bool Rep_DBThread::chk_table(QString tablename, QStringList tables) { for(int i=0;i0){ if(QSqlDatabase::contains("rec_db")){ recdb = QSqlDatabase::database("rec_db"); }else{ recdb = QSqlDatabase::addDatabase("QSQLITE","rec_db"); } QString name = QString("/root/db/watchdoglog%1.db").arg(QDate::currentDate().toString("yyyyMMdd")); recdb.setDatabaseName(name); if(recdb.open()){ if(!chk_table("ypsync_t_rec",recdb.tables())) { recdb.exec("create table `ypsync_t_rec` (`id` integer primary key autoincrement, `uuid` text(40), `data_str` text(1024), `send` integer , `store_time` text(20), `reply_str` text(1024), `reply_time` text(20))"); } if(!chk_table("ypsync_t_rec_dis",recdb.tables())) { recdb.exec("create table `ypsync_t_rec_dis` (`id` integer primary key autoincrement, `uuid` text(40), `data_str` text(1024), `send` integer , `store_time` text(20), `reply_str` text(1024), `reply_time` text(20))"); } if(!chk_table("ypsync_t_rec_xy",recdb.tables())) { recdb.exec("create table `ypsync_t_rec_xy` (`id` integer primary key autoincrement, `uuid` text(40), `data_str` text(1024), `send` integer , `store_time` text(20), `reply_str` text(1024), `reply_time` text(20))"); } if(!chk_table("cnsync_t_rec",recdb.tables())){ recdb.exec("create table `cnsync_t_rec` (`id` integer primary key autoincrement, `uuid` text(40), `data_str` text(1024), `send` integer , `store_time` text(20), `reply_str` text(1024), `reply_time` text(20))"); } if(!chk_table("jasync_t_rec",recdb.tables())){ recdb.exec("create table `jasync_t_rec` (`id` integer primary key autoincrement, `uuid` text(40), `data_str` text(1024), `send` integer , `store_time` text(20), `reply_str` text(1024), `reply_time` text(20))"); } if(!chk_table("hpsync_t_rec",recdb.tables())){ recdb.exec("create table `hpsync_t_rec` (`id` integer primary key autoincrement, `uuid` text(40), `data_str` text(1024), `send` integer , `store_time` text(20), `reply_str` text(1024), `reply_time` text(20))"); } if(!chk_table("newcnsync_t_rec",recdb.tables())){ recdb.exec("create table `newcnsync_t_rec` (`id` integer primary key autoincrement, `uuid` text(40), `data_str` text(1024), `send` integer , `store_time` text(20), `reply_str` text(1024), `reply_time` text(20))"); } if(!chk_table("ypywsync_t_rec",recdb.tables())){ recdb.exec("create table `ypywsync_t_rec` (`id` integer primary key autoincrement, `uuid` text(40), `data_str` text(1024), `send` integer , `store_time` text(20), `reply_str` text(1024), `reply_time` text(20))"); } if(!chk_table("xfzdsync_t_rec",recdb.tables())){ recdb.exec("create table `xfzdsync_t_rec` (`id` integer primary key autoincrement, `uuid` text(40), `data_str` text(1024), `send` integer , `store_time` text(20), `reply_str` text(1024), `reply_time` text(20), `device_code` text(40), `open_project_id` text(30))"); } if(recdb.transaction()){ while(sqlList2.length()>0){ recdb.exec(sqlList2.first()); sqlList2.removeFirst(); usleep(1000); } recdb.commit(); } recdb.close(); } } usleep(10000); } }