- 論壇徽章:
- 0
|
- db=QSqlDatabase::addDatabase("QODBC", "db");
-
db.setHostName("localhost");
-
db.setPort(1433);
-
db.setDatabaseName("ODBC數(shù)據(jù)源名");
-
db.setUserName("sa");
-
db.setPassword("password");
-
if(!db.open())
-
{
-
QMessageBox::information(this, tr("db"), tr("can not open"));
-
return false;
-
}
關(guān)鍵是要把QT文件夾下的plugins下的sqldrivers文件夾拷貝到編譯好的可執(zhí)行文件相同的目錄下。
- #ifndef CONNECTION_H
-
#define CONNECTION_H
-
#include <QMessageBox>
-
#include <QSqlDatabase>
-
#include <QSqlError>
-
#include <QSqlQuery>
-
-
-
static bool connection()
-
{
-
QSqlDatabase db=QSqlDatabase::addDatabase("QODBC");
-
db.setDatabaseName(QString("DRIVER={SQL SERVER};"
-
"SERVER=%1;" //服務(wù)器名稱
-
"DATABASE=%2;"//數(shù)據(jù)庫名
-
"UID=%3;" //登錄名
-
"PWD=%4;" //密碼
-
).arg("TANY_PC")
-
.arg("MyData")
-
.arg("sa")
-
.arg("")
-
);
-
if (!db.open())
-
{
-
QMessageBox::critical(0, qApp->tr("Cannot open database"),
-
db.lastError().databaseText(), QMessageBox::Cancel);
-
return false;
-
}
-
else
-
{
-
QMessageBox::information(0,"Connect Database","connect success!",QMessageBox::Ok);
-
return true;
-
}
-
return true;
-
}
-
#endif // CONNECTION_H
|
|