加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

QT 连接SQLServer

发布时间:2020-12-12 13:04:50 所属栏目:MsSql教程 来源:网络整理
导读:转载自:?http://tcspecial.iteye.com/blog/1914962 QtSql虽说提供了通用的数据库访问接口,可是有些数据库就是不太通用,在windows下用QT连接sqlserver,折腾了半天.? ? 一. 配置 ? ? 1. 启用TCP/IP ? ? ?安装好sqlserver2005后,开始菜单找到 配置工具-SQL Ser

转载自:?http://tcspecial.iteye.com/blog/1914962

QtSql虽说提供了通用的数据库访问接口,可是有些数据库就是不太通用,在windows下用QT连接sqlserver,折腾了半天.?

?

一. 配置

? ? 1. 启用TCP/IP

? ? ?安装好sqlserver2005后,开始菜单找到 配置工具->SQL Server配置管理器:

? ? ?SQLEXPRESS 的协议,启用TCP/IP,启用相应IP地址; SQL Native Client 配置,客户端协议,启动TCP/IP,TCP/IP属性设置监听1433端口?

? ??

? ? 2. 启用远程连接

? ? 配置工具->SQL Server外围应用配置器-> 本地连接和远程连接,勾选同时使用TCP/IP和named pipes即可

二. 测试

? ?方法一:?

Cpp代码??

收藏代码

  1. QSqlDatabase?OpenDB()??
  2. {??
  3. ????QSqlDatabase?db=QSqlDatabase::addDatabase("QODBC");??
  4. ????//?注意,对于express版本数据库,?一定要加sqlexpress这种后缀??
  5. ????QString?dsn="DRIVER={SQL?SERVER};SERVER=192.168.10.22sqlexpress;DATABASE=sqlscada";??
  6. ????db.setDatabaseName(dsn);??
  7. ????db.setUserName("sa");??
  8. ????db.setPassword("scada");??
  9. ??????
  10. ????if(!db.open())??
  11. ????{??
  12. ????????qDebug("Error:%s",qPrintable(db.lastError().text()));??
  13. ????????return?db;??
  14. ????}??
  15. }??

? ?连接数据库时,一直连不上报错:?ConnectionOpen (Invalid Instance())?,连接无效,结果发现微软对express版本数据库是有限制的,在SERVER字段添加sqlexpress这样后缀,连接OK

? ?方法二: 设置数据源,指定dsn即可

???控制面板->系统和安全->管理工具->数据源(ODBC)

? ?

? ?

? ?

? ?代码:

QSqlDatabase?db=QSqlDatabase::addDatabase("QODBC");??
  • db.setDatabaseName("testdsn");??
  • db.setUserName("sa");??
  • db.setPassword("scada"); ?
  • (编辑:李大同)

    【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

      推荐文章
        热点阅读