QT系列——SQLServer

举报
小糖饼最甜呀 发表于 2022/04/21 22:34:56 2022/04/21
【摘要】 记录一下Qt连接SQLServer数据库的过程。

今天记录一下Qt连接SQLServer数据库的过程。

SQLServer数据库

先简单的介绍一下SQLServer数据库。

SQLServer数据库是微软提供的一个关系型数据库,与其他关系型数据库一样,采用了SQL语言标准,支持SQL语句的增删改查,该数据库具 有可扩展性、高性能等特点。windows系统提供ODBC管理数据源工具,用于支持连接SQLServer数据库。

连接SQLServer数据库前提

先创建SQLServer数据库,查看一下数据库配置,确保已经开启TCP/IP端口,这里省略创建数据库的步骤。
查看方式:

使用SQL Server 配置管理器,选择SQL Server网络配置。确认SQL Server 网络配置中的TCP/IP协议为已启用状态,并且其默认端口为1433端口。

配置ODBC数据源

QT通过ODBC方式连接SQLServer数据库,连接需要配置ODBC数据源。

通过ODBC数据源管理程序,添加并配置文件DSN。

  1. 打开ODBC管理数据源程序;
  2. 创建新数据源,选择SQLServer;
  3. 配置过程中,需要输入服务器IP、指定数据库等,进行数据源配置;
  4. 配置完成后,进行测试,测试成功即配置成功;

QT连接SQLServer数据库

  1. pro文件中加入QT += sql

  2. 创建连接

  • Qt连接SQLServer使用ODBC的连接方式。
  • 添加数据库
QSqlDatabase database = QSqlDatabase::addDatabase("QODBC","SQLServerDatabase");
  • 设置数据库信息
database.setHostName("localhost");// 设置连接主机,配置数据库服务器的ip地址
database.setDatabaseName("sqlserver.dsn");// 设置配置的数据源,如果是文件,需要带.dsn的后缀
database.setUserName("admin");// 设置用户名
database.setPassword("password");// 设置密码
  1. 打开数据库
    操作数据库之前,需要先成功打开数据库。
dataBase.open()

4.数据库操作

  • 获取所有数据库表
QStringList tableList = dataBase.tables();
  • 创建query,访问数据库
    • 使用QSqlQuery可以操作数据库,query关联数据库dataBase,以便对该数据库进行操作。
    • 使用QSqlQuery对数据库进行增删改查。
QSqlQuery query(dataBase);
query.exec(sql);// sql变量为SQL语句
  1. 关闭数据库
    数据库使用结束后,需要进行关闭,以释放资源。
dataBase.close();
  1. 移除数据库连接
    数据库连接移除时,不能有打开的查询,否则会有资源泄露。
QSqlDatabase::removeDatabase("SQlserverDatabase");
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。