1. 程式人生 > >qt sqlite 基本操作例項

qt sqlite 基本操作例項

在這裡只展示三個方法:一:配置宣告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();//關閉資料庫
//移除資料庫連線以後再講