1.工程及头文件,文档说明就是了;
2.按照网上很多示例,发现都不对,主要是没说清楚,注释也不明白,后来终于在一个博客上看到一个能成功应用的,代码如下:
QSqlDatabase db=QSqlDatabase::addDatabase("QODBC"); //创建一个连接,表示默认
db.setDatabaseName(QString("DRIVER={SQL SERVER};"
"SERVER=%1;" //服务器名称
"DATABASE=%2;"//数据库名
"UID=%3;" //登录名
"PWD=%4;" //密码
).arg("192.168.20.156") //数据库地址
.arg("dogkeep") //数据库名称
.arg("sa") //登陆的用户名
.arg("123456") //登陆的密码
);
//这里很多实例用的什么 db.setXXX("XXX");都试过了,我这里没效果
if(!db.open()){
qDebug() << "数据库操作失败";return 0;
}
QSqlQuery query;
bool success = query.exec("select * from dbo.test2"); //执行查询语句。dbo.test2是该表格
if(!success){
qDebug() << "查询user失败";return 0;
}
//全部依次查询
while (query.next()) {QSqlRecord rec = query.record(); //
for(int i=0;i<rec.count();++i)//将每行的每一列结果得出来
{
QString strResult = query.value(i).toString();//表第i个字段的内容
}
}
3.网络示例不一定能用,需要自己亲自实践,过程什么的都是简单的。
经过比对,得到的字符串完全一样。然后按实际需求处理。