使用qt连接到SQL Server

时间:2010-06-17 10:43:10

标签: sql qt

如何使用Qt连接到SQL Server?

2 个答案:

答案 0 :(得分:7)

Qt支持ODBC,使用QSqlDatabase连接到odbc数据库,您可以使用以下代码

QString connectionTemplate = "DRIVER={SQL SERVER};SERVER=%1;DATABASE=%2;";

QString connectionString = connectionTemplate.arg(server).arg(dbName);
QSqlDatabase db = QSqlDatabase::addDatabase("QODBC", connectionName);

db.setDatabaseName(connectionString);
db.setUserName(user);
db.setPassword(password);

if (db.open())
{

}
else
{

}

大多数或所有QSql ...类都返回错误,总是检查错误是一个非常好的习惯。

如果您从头开始构建Qt,则可能必须启用odbc插件的构建

答案 1 :(得分:5)

在Windows上,您还可以使用DSN连接到数据库。在此示例中,创建并使用名为“Orders”的DSN。

//Load Odbc driver
QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");

//Set DSN
db.setDatabaseName("Orders");

//Connect to db
if(db.open())
{
    //Query
    QSqlQueryModel *model = new QSqlQueryModel;
    model->setQuery("SELECT * FROM Orders ORDER BY Date DESC", db);

    //Display
    QTableView *view = new QTableView;
    view->setModel(model);
    view->show();
}