目录

QT连接SQL-Server数据库,并查询显示其中的数据

目录

QT连接SQL Server数据库,并查询显示其中的数据

//连接SQL数据库
void OpenDatabase()
{
    QSqlDatabase db=QSqlDatabase::addDatabase("QODBC");
    db.setDatabaseName(QString("DRIVER={SQL SERVER};"
                               "SERVER=%1;" //服务器名称
                               "DATABASE=%2;"//数据库名
                               "UID=%3;"           //登录名
                               "PWD=%4;"        //密码
                               ).arg("192.168.6.113")//服务器名称
                       .arg("TSOMV2")//数据库名
                       .arg("sa")//登录名
                       .arg("123456")//密码
                       );
    if (!db.open())
    {
        QMessageBox::critical(0, qApp->tr("Cannot open database"),
                              db.lastError().databaseText(), QMessageBox::Cancel);
    }
}
//查询数据库中的数据,并显示

void MainWindow::on_pushButton_clicked()

{

QSqlQueryModel *model = new QSqlQueryModel;
    model->setQuery("select * from dbo.T_TsInfo");//这里直接设置SQL语句,忽略最后一个参数
    ui->tableView->setModel(model);
    //以下是视觉方面的效果,不加也没影响
    //隔行变色
    ui->tableView->setAlternatingRowColors(true);
    //设置行高
    int row_count = model->rowCount();
    for(int i =0; i < row_count; i++)
    {
        ui->tableView->setRowHeight(i, 20);
    }

}


  
//运行,显示效果
![](https://img-blog.csdn.net/20160426091917650?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
//源码下载链接:http://download.csdn.net/detail/liangzhuangdongtou/9502155