qt sqlite 基本操作例項
阿新 • • 發佈:2018-12-17
在這裡只展示三個方法:一:配置宣告sqlite 二:匯入建立連結和資料庫 三:匯入操作語句,操作資料庫
qt中操作資料庫,要熟悉三個類 :QSqlDatabase QSQLerror QSqlquery
QSqldatabase 例項化,並建立連結,由他的例項化物件對資料庫進行操作
QSqlquery 例項化,並繫結資料鏈接,由它進行操作語句傳遞,完成對資料庫具體操作
QSqlerror 報出有關資料的錯誤
使用資料庫步驟:
第一步:匯入,在.pro檔案中新增 QT +=sql 語句
第二步:檢視,你使用的qt目前支援哪些版本
qDebug()<<QSqlDatabase::drivers();
第三步:建立連結,建立資料庫
if (QSqlDatabase::contains(connect_name)) //connect_name是連線名 { qDebug()<<"連線存在,繫結連線"; database = QSqlDatabase::database(connect_name); } else { qDebug()<<"連線不存在,建立連結,建立資料庫"; database= QSqlDatabase::addDatabase("QSQLITE",connect_name);//注意,這裡QSQLITE必須加上 database.setDatabaseName(database_workpath.append("./").append(database_name).append(".db"));//建立資料庫,跟建立檔案一樣,如果想把資料庫放在某個資料夾中,可以把路徑加上去 } if(QSqlDatabase::contains(connect_name)){ if(database.open()){qDebug()<<"資料庫建立成功";database.close();}//注意,如果建立完資料,從未開啟的話,資料庫是不會顯示出來的。我測試過n次 }
第五步:例項化 QSqlqurry並繫結連結
bool ConnectDatabase::OperationalDatabase(QString statement){ QSqlQuery query(database); //例項化物件,完成連結 if(database.open()){ //開啟資料庫 qDebug()<<"資料庫已經開啟"; if(query.exec(statement)){ //注意exec的使用,建議你去了解一下prepare()方法 qDebug()<<"操作資料庫成功"; database.close(); return true; }else{qDebug()<<"操作失敗:"<<query.lastError();database.close(); return false;} } qDebug()<<"資料庫沒有開啟,無法操作"; return false; }
第六步:關閉資料庫,移除資料庫連線
database.close();//關閉資料庫
//移除資料庫連線以後再講