qt和sqlserver的简单介绍

qt怎么连接sqlserver

前提:

创新互联建站专业为企业提供行唐网站建设、行唐做网站、行唐网站设计、行唐网站制作等企业网站建设、网页设计与制作、行唐企业网站模板建站服务,十余年行唐做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

SQL Server里已经建立了相应的数据库,有对应的表和数据。

步骤:

1. Qt里新建一个空工程,添加main.cpp文件。

2. 在工程文件(.pro文件)添加一行:QT += sql。

3. 该敲代码了,代码如下:

[cpp] view plain copy

#include QtGui

#include QString

#include QTextCodec

#include QSqlDatabase

#include QtSql

/*连接数据库*/

void OpenDatabase()

{

QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");

db.setDatabaseName(QString("DRIVER={SQL SERVER};"

"SERVER=%1;"

"DATABASE=%2;"

"UID=%3;"

"PWD=%4;").arg("QIAN-PC")

.arg("StuManager")

.arg("sa")

.arg("123456"));

if (!db.open())

{

QMessageBox::warning(0, qApp-tr("Cannot open database"),

db.lastError().databaseText(), QMessageBox::Cancel);

}

else

{

qDebug()"Connect to Database Success!";

}

}

int main(int argc, char *argv[])

{

QApplication a(argc, argv);

/*设置编码格式*/

QTextCodec::setCodecForTr(QTextCodec::codecForName("GBK"));

OpenDatabase();

QDialog *mainDialog = new QDialog;

QTableView *tableView = new QTableView;

QHBoxLayout *layout = new QHBoxLayout;

layout-addWidget(tableView);

mainDialog-setLayout(layout);

QSqlQueryModel *model = new QSqlQueryModel;

model-setQuery(QObject::tr("select * from 教师"));

tableView-setModel(model);

mainDialog-adjustSize();

mainDialog-show();

return a.exec();

}

4. 看看运行结果吧。

参考网址:

qtsqlquery查询出来的条数和sqlserver不一致

qtsqlquery查询出来的条数和sqlserver不一致的原因就在于实体对象中的Key列即列1的值相同(在我们的例子中都为1)。

为了避免错误的结果,可以把把视图中col1,col2,col3的列都设为实体键。

这样可以避免一些问题,有时候列太多了,全设为实体键,不是一个好办法。

如何用qt对sqlserver数据库

qt可以使用odbc驱动去连接sqlserver,先配置好odbc数据源,然后在qt里面调用数据源即可连接;


本文标题:qt和sqlserver的简单介绍
标题路径:http://myzitong.com/article/dsdgjce.html