• QtSqlDatabase-QCryptographicHash数据库-加密


    Qt数据库

    Qt SQL模块是Qt提供的一个访问数据库的接口,支持多种平台下使用不同类型的数据库,在这个过程中,数据库驱动 起到了很大的作用,它负责与不同的数据库进行通信,有了数据库驱动,我们才能使用不同类型的数据库。

    在这里插入图片描述

    在qt中使用数据库要在工程文件中添加

    QT += sql

    • QSqlDatabase 数据库处理与连接
    • QSqlQuery 执行和操作 SQL 语句的方法
    • QSqlRecord 数据库记录
    • QSqlResult 访问来自特定 SQL 数据库的数据
    • QSqlError 提供 SQL 数据库错误信息

    1、创建一个数据库连接

    QSqlDatabase db = QSqlDatabase::addDatabase(“QSQLITE”);

    在这里插入图片描述

    创建一个连接,参数为数据库驱动类型和连接名称。如果链接名称默认不写,在后期整个qt应用中可以使用,通过Qt中的接口比如QSqlQuery操作数据库

    //创建数据库连接句柄
    QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE","test");
     //设置数据库名称 
    db.setDatabaseName("my.db"); 
    //打开数据库
     if(!db.open()) 
     { 
         qDebug()<
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    2、执行SQL语句

    QSqlQuery常用函数
    在这里插入图片描述

    只要在数据库连接并且打开后可以在中任意位置通过QSqlQuery操作数据

    //构造函数没有参数就自动去关联到默认连接名的数据库
     QSqlQuery query(QSqlDatabase::database("test")); 
    //执行创建表格的语句 
    if(!query.exec("create table student(id int, name text)")) 
    { qDebug()<
    • 1
    • 2
    • 3
    • 4
    • 5

    获取select命令的返回内容

    //1.创建一个QSqlQuery对象
    QSqlQuery query;
    //2.定义sql命令
    QString sql = QString(ui->textEdit->toPlainText());
    //3.执行sql命令
    if(query.exec(sql))
    {
    	qDebug()<<"执行成功";
    }
    else
    {
    	qDebug()<<"执行失败:"<

3、加密

QCryptographicHash 加密

在这里插入图片描述

    QByteArray btArray;//字符串MD5算法加密
    btArray.append(str);//加入原始字符串
    QCryptographicHash hash(QCryptographicHash::Md5);  //Md5加密算法
    hash.addData(btArray);  //添加数据到加密哈希值
    QByteArray resultArray =hash.result();  //返回最终的哈希值
    QString md5 =resultArray.toHex();//转换为16进制字符串
	ByteArray resultArray =hash.result();  //返回最终的哈希值
    QString md5 =resultArray.toHex();//转换为16进制字符串
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 相关阅读:
    Python数据可视化:如何选择合适的图表可视化?
    Leetcode 284. Peeking Iterator (Iterator设计题)
    雷达实测数据的信噪比
    远程办公身份安全加固方案
    Spring Cloud 配置中心多环境配置bootstrap.yml
    MongoDB--- 客户端操作 与 复制集
    如何制作gif动图gif (多图合成gif、GIF录制软件、视频制作成GIF动图)
    Unity URP入门实战
    SpringBoot初始化
    pymupdf提取pdf表格及表格数据合并
  • 原文地址:https://blog.csdn.net/qq_45698138/article/details/126393831