也可以通过如下代码测试qt5是否支持SqlServer

#include

#include

#include

#include

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

{

QApplication app(argc, argv);

qDebug() << "Available drivers:";

QStringList drivers = QSqlDatabase::drivers();

foreach(QString driver, drivers) //列出Qt5所有支持的数据库类型

qDebug() << "\t" << driver;

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

qDebug() << "ODBC driver valid?" << db.isValid(); //true为支持

}

输出结果如下:

"QSQLITE""QMYSQL""QMYSQL3""QODBC""QODBC3""QPSQL""QPSQL7"ODBC driver valid? true

2. 若是没有编译,可以手动编译了qt的ODBC插件。

可以通过编译qt的时候加上 configure -plugin-sql-odbc来保证,也可以单独编译qt安装包里的~\src\plugins\sqldrivers\odbcqmake -t vclib odbc.pronmake (注:windows中为mingw32-make)编译后,在~\plugins\sqldrivers\下应该有qsqlodbcd4.dll(debug)或qsqlodbc4.dll

此时,可以用下面的程序,测试一下你T目前支持哪些数据库访问。

二、连接SQLServer

要注意的就是连接数据库时使用的数据库名,sqlserver和sqlite、mysql等是不同的,并不是直接写入数据库名称。 而是DSN名。 如果你已经设置好了DSN,可以直接输入DSN名。 如果没有,可以采用DSN连接字符串直接连接ODBC数据库。

1、直接设定DSN的字符串连接数据库,很简单。

/**

*函数介绍:创建数据库连接

*输入参数:

*返回值:无

*/

bool DataAccess::createConnection()

{

QStringList drivers = QSqlDatabase::drivers();

foreach(QString driver, drivers)

qDebug() << "\t" << driver;

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

qDebug() << "ODBC driver valid?" << db.isValid();

// 注意,对于express版本数据库, 一定要加\\sqlexpress这种后缀 SERVER=58.67.161.109\\sqlexpress

QString dsn = "DRIVER={SQL SERVER};SERVER=58.67.161.109;DATABASE=RDBS;UID=RDBS_USER;PWD=RDBS_USER_;";

db.setHostName("58.67.161.109"); //数据库服务器,我这里不需要

//即使dsn中已经设置了UID和PASSWD,仍然需要执行setUserName和setPassword的步骤

//还要注意这里的用户名要有创建表的权限,不然创建下面的表student会不成功。

db.setDatabaseName(dsn); //数据库名

db.setUserName("RDBS_USER");//登录名,我再dsn里设置UID和PWD后,就不需要设置了

db.setPassword("RDBS_USER_");//密码,我再dsn里设置UID和PWD后,就不需要设置了

if(!db.open ())

{

QSqlError error = db.lastError();

QMessageBox::warning (0, "Warning", QString("Failed to open database!Error:%1").arg(error.text()));

returnfalse;

}

returntrue;

}

取消

评论

linux qt sql,linux qt联接sqlserver怎么配置服务器相关推荐

  1. 安装数据库显示参考服务器错误日志,Sql Server安装出错,安装程序配置服务器失败的解决方法小结...

    错误重现:首先在控制面板里卸载了sqlserver软件,一切正常,然后重启(一定要重启,否则没法重装),执行sqlserver的安装程序,一切似乎都正常,一路下一步,安装到了最后,突然提示" ...

  2. sql2000不显示服务器失败,安装sql server 2000数据库提示程序配置服务器失败.(解决方法)...

    SQL安装失败 ,提示: 安装程序配置服务器失败.参考服务器错误日志和C:\WINDOWS\sqlstp.log 然后无法运行服务器. sqlstp.log提示: [Microsoft][ODBC S ...

  3. 【问】SQL安装时提示“安装程序配置服务器失败”?

    [问题描述] 安装程序配置服务器失败.参考服务器错误日志和C:\windows\sqlstp.log 了解更多信息 [答] 1.暂时关闭防火墙.杀毒软件,将原sql server安装目录彻底删除,并重 ...

  4. linux下sql查询的使用,sql-server – 如何在Linux上查看SQL Server中的执行计划

    微软发布了一款名为 SQL Operations studio的新工具,它类似于SSMS,但可以在Windows,Linux,Macos上使用. 下面是它的样子截图 使用sqlopsstudio查看实 ...

  5. 服务器部署系统启动失败,安装程序配置服务器失败Microsoft SQL Server Desktop Engine...

    安装MSDE2000出现错误的解决办法 安装程序配置服务器失败Microsoft SQL Server Desktop Engine Microsoft SQL Server Desktop Engi ...

  6. Linux 平台下基于Qt 的电子地图的绘制

    Linux 平台下基于Qt 的电子地图的绘制 摘要-------------------------------------------1   关键词------------------------- ...

  7. qt调用linux系统调用,qt在其他函数调用数据库

    <多核与GPU编程:工具.方法及实践>----3.2 线程 本节书摘来自华章出版社<多核与GPU编程:工具.方法及实践>一书中的第3章,第3.2节, 作 者 Multicore ...

  8. qt调用linux 进程,Linux 下qt 程序打包发布(使用linuxdelpoyqt ,shell 脚本)

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/u014746574/article/d ...

  9. 【Qt开发】【VS开发】【Linux开发】OpenCV、Qt-MinGw、Qt-msvc、VS2010、VS2015、Ubuntu Linux、ARM Linux中几个特别容易混淆的内容...

    [Qt开发][VS开发][Linux开发]OpenCV.Qt-MinGw.Qt-msvc.VS2010.VS2015.Ubuntu Linux.ARM Linux中几个特别容易混淆的内容 标签:[Qt ...

最新文章

  1. 【记录】我在团队合作中遇到过的胎神(扑街仔)级别前端小伙伴 之 莫名其妙配置0.0.0.0这种IP访问
  2. 离散小波变换 python_CDF 9/7离散小波变换(卷积)
  3. axure rp 8.0
  4. ubuntu/deepin常用软件清单(都是使用sudo apt-get install安装方式)
  5. sap gateway development mode
  6. python用for循环求10的因数_python for循环练习(初级)
  7. mysql为字段值添加或者去除前缀、后缀(查询字段拼值)
  8. 软件测试项目时间一般多少钱,项目的时间进度该如何估算?
  9. Educational Codeforces Round 26 - A, B, C 思维
  10. Javaweb在线视频学习网站的设计与实现
  11. python 网格搜索_Python机器学习:6.4 通过网格搜索调参
  12. atmega128 bootloader程序在IAR-AVR下 linker文件的配置及原因
  13. 航空公司客户价值分析(下)
  14. 软考高级可以作为高级职称直接落户上海吗?
  15. 机器学习笔记:局部加权回归 LOESS
  16. web前端期末大作业:基于HTML+CSS+JavaScript奥迪企业bootstrap响应式网站
  17. python opencv BGR2RGB转换原理
  18. 19.通证的分类(各种分类一览表)
  19. L1-057 PTA使我精神焕发 (5 分)
  20. 16路4-20mA转Modbus TCP网络数据采集模块 WJ89

热门文章

  1. (附源码gitHub下载地址)spring boot -jta-atomikos分布式事务
  2. Serializer字段和选项
  3. 开发过程中编写的一些批处理
  4. iOS 两种方法实现左右滑动出现侧边菜单栏 slide view
  5. windows 批处理-重命名
  6. 89C52控制1602A液晶的计时器
  7. pidgin-qq可以使用QQ2012协议了
  8. linux的基础知识——多线程gdb调试
  9. k-Means——经典聚类算法实验(Matlab实现)
  10. Leetcode--141. 环形链表