QT與SQL(一):與資料庫的連線
阿新 • • 發佈:2018-12-26
軟體版本:QT5.5.1+Microsoft SQL Server 2008 R2
1,在.Pro檔案中新增程式碼:
QT += sql
2,在對應的.h檔案或.cpp檔案中新增引用:
#include<QtSql>
3,進行連線配置,共有兩種方法:
(1)直接使用SQL相關語句:
//QODBC為QT中與SQL相對應的設定字元,其他種類的資料庫也有與之相對應的字元 QSqlDatabase db=QSqlDatabase::addDatabase("QODBC"); QString dsn="DRIVER={SQL SERVER};SERVER=主機名稱;DATABASE=資料庫名稱"; //如果程式與資料庫位於同一臺電腦,且電腦具有登入許可權,則可不設定賬號密碼進行登入 //在程式設計時,強烈建議使用賬號密碼方式訪問資料庫 db.setDatabaseName(dsn); //db.setUserName(賬號名稱); //db.setPassword(賬號密碼); db.open();
(2)利用資料來源ODBC管理器對資料庫進行配置:
QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
//使用QODBC設定資料來源的方法網上很多,這裡不再贅述
db.setDatabaseName(QODBC中設定的資料來源名稱);
db.setUserName(賬號名稱);
db.setPassword(賬號密碼);
db.open();
4,對連線狀態進行檢查
if(db.isOpen()) { ui->plainTextEdit->appendPlainText("資料庫連線成功"); } else { //db.lastError()記錄了資料庫連線過程中的錯誤資訊,方便追溯 ui->plainTextEdit->appendPlainText("資料庫連線失敗,失敗原因為:"+db.lastError().text()); } db.close();