目录
数据库连接
------------------------MYSQL--------------------------- // 创建数据库连接,指定数据库驱动 QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL"); // 数据库连接需要设置的信息 db.setHostName("127.0.0.1"); // 数据库服务器IP,本地数据库 db.setDatabaseName("ceshi"); // 数据库名 db.setUserName("root"); // 用户名 db.setPassword("123456"); // 密码 db.setPort(3306); // 端口号 // 连接数据库 bool ok = db.open(); if (ok) { qDebug() << "database connect is success"; } else { qDebug() << "database connect is fail"; } -----------------------SQLite---------------------------- //添加数据库驱动 QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE"); //设置数据库名称 db.setDatabaseName("test.db"); // 连接数据库 bool ok = db.open(); if (ok) { qDebug() << "database connect is success"; } else { qDebug() << "database connect is fail"; }
数据库关闭
void closeDB() { if(db) { if(db->isOpen()) { db->close(); } } }
相关操作
查询
bool selectImgMd5(const QString &imgMd5, QStringList& lists) { bool bRet = false; lists.clear(); if(db) { QSqlQuery query(*db); query.exec(QString("select type from %1 where imgMd5 = '%2' ") .arg("img_table") .arg(imgMd5)); while(query.next()) { lists<< query.value("type").toString(); bRet = true; } } return bRet; }
修改
bool updateImgInfoByMd5(const QString &md5) { bool bRet = false; if(db) { QSqlQuery query(*db); query.prepare(QString("UPDATE %1 SET %2 where imgMd5= '%3' ") .arg("img_table") .arg("name = ?") .arg(md5)); query.bindValue(0, img); bRet = query.exec(); } return bRet; }
添加
bool insertImg(const QString& md5, const QString& name) { bool bRet = false; if(db) { QSqlQuery query(*db); if(!bImgData) { //添加图片数据 query.prepare(QString("INSERT INTO %1(%2) VALUES(%3)") .arg("img_table") .arg("name, imgMd5") .arg("?, ?")); query.addBindValue(name); query.addBindValue(md5); bRet = query.exec(); } } return bRet; }
删除
bool deleteImgByMd5(const QString& md5) { bool bRet = false; if(sqlDB) { QSqlQuery query(*sqlDB); bRet = query.exec(QString("delete from %1 where imgMd5 = '%2' ") .arg("img_table") .arg(md5)); } return bRet; }