• QT创建数据库(QT4.11.1)


    在Qt中使用数据库需要使用Qt提供的数据库模块,主要是Qt SQL模块。下面是使用Qt编写一个数据库的基本步骤:

    引入头文件:在代码文件中引入相关的头文件,包括 QSqlDatabaseQSqlQuery 等。

    cpp

    1. #include
    2. #include

    连接数据库:使用 QSqlDatabase 类连接数据库,并设置连接参数。可以选择使用内置的数据库驱动(如SQLite)或者第三方数据库驱动。

    cpp

    1. QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
    2. db.setDatabaseName("database.db"); // 数据库文件名
    3. if (!db.open()) {
    4. qDebug() << "无法连接到数据库!";
    5. return; // 连接失败
    6. }

    创建表格:使用 QSqlQuery 类执行 SQL 语句来创建表格。

    cpp
    1. QSqlQuery query;
    2. if (!query.exec("CREATE TABLE IF NOT EXISTS MyTable (ID INT PRIMARY KEY, Name VARCHAR(255))")) {
    3. qDebug() << "无法创建表格!";
    4. return; // 创建表格失败
    5. }

    插入数据:使用 QSqlQuery 类执行 SQL 语句来插入数据。

    cpp
    1. QSqlQuery query;
    2. query.prepare("INSERT INTO MyTable (ID, Name) VALUES (:id, :name)");
    3. query.bindValue(":id", 1);
    4. query.bindValue(":name", "John Doe");
    5. if (!query.exec()) {
    6. qDebug() << "无法插入数据!";
    7. return; // 插入数据失败
    8. }

    查询数据:使用 QSqlQuery 类执行 SQL 语句来查询数据。

    cpp

    1. QSqlQuery query("SELECT * FROM MyTable");
    2. while (query.next()) {
    3. int id = query.value("ID").toInt();
    4. QString name = query.value("Name").toString();
    5. qDebug() << "ID:" << id << "Name:" << name;
    6. }

    关闭数据库连接:在程序退出前,关闭数据库连接。

    cpp
    db.close();
    

    以上是在Qt中使用数据库的基本步骤。需要注意的是,具体的数据库操作和语法会因不同的数据库类型而有所差异,可以根据使用的数据库类型来适配相应的 SQL 语句。此外,还可以使用 Qt 提供的模型视图框架(如 QSqlTableModel 或 QSqlQueryModel)来简化数据库操作和与界面的交互。

    1、创建一个表

    格式为:create table 表名(内容 类型);

    例:create table student(number int , name char(32), score double);

    2、向表中插入信息

    格式为:insert into 表名 values(表中的内容);

    例:insert into student values(1, 'xiaoming', 99);
    QT中的使用:
    QString("insert into User_Message(user,password) values('%1','%2')").arg(user1).arg(password1);

    3、从表格中删除信息

    格式为:delete from 表名 where 列名 = 条件;

    例:delete  from student where name = 'xiaoming';

    4、查询表中的内容

    (1)格式为:select 列名 from 表名 where 列名 = 条件;

    例:select score from student where name = 'xiaoming';

    (2)我们可以用这样的语句查询所有的信息

    select * from student;

    5、修改表中的数据

    格式为:update 表名 set 列名 = 新内容 where 列名 = 条件;

    例:update student set score = 66 where name = 'xiaoming';

    6、从数据库中删除一个表

    格式为:drop table 表名;

    例:drop table student;

  • 相关阅读:
    学生HTML个人网页作业作品:HTML绿色的化妆品静态网站(web前端网页制作课作业)
    PHP namespace(命名空间) 和 use; 很多人搞不清楚命名空间和使用方法,书上介绍也不清楚看着头大
    顺序表的折半查找法
    时间序列压缩算法及其应用
    Linux免密登录——A登录B密钥设置(SSH SCP)
    【SLAM数学基础】旋转的三种数学描述及其转换
    数据科学最佳实践:Kedro 的工程化解决方案 | 开源日报 No.47
    计算机网络基础导览
    操作系统概念 线程调度
    日常开发Git命令
  • 原文地址:https://blog.csdn.net/qrsxiaojie/article/details/133386651