网站建设资讯

NEWS

网站建设资讯

包含qt中sqlserver的词条

qt怎么连接sqlserver

前提:

创新互联公司网站建设提供从项目策划、软件开发,软件安全维护、网站优化(SEO)、网站分析、效果评估等整套的建站服务,主营业务为成都网站建设、成都做网站重庆APP开发公司以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。创新互联公司深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

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. 看看运行结果吧。

参考网址:

如何用qt对sqlserver数据库

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

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

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

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

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


分享标题:包含qt中sqlserver的词条
转载源于:http://cdweb.net/article/hosgoj.html