Leechi_lai 2017-05-22 20:19 采纳率: 100%
浏览 2230
已采纳

怎么样在QT中创建一个mysql数据库的学生成绩表呢

表内容包括学号,姓名,科目,分数,代码只在qt里面写而不用另外再在mysql里建表

  • 写回答

1条回答 默认 最新

  • 战在春秋 2017-05-22 21:07
    关注

    示例代码如下:

    void MainWindow::on_pushButton_2_clicked()
    {
        QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
    
        db.setHostName("localhost");
        db.setDatabaseName("myTestDB");
        db.setUserName("root");
        db.setPassword("");
    
        if(db.open())  { ui->textBox->append("Connected..."); }
            QSqlQuery query(db);
        else ui->textBox->append(db.lastError().text());
    
        QSqlQuery query;
        query.prepare( "CREATE TABLE IF NOT EXISTS myTable (id INTEGER UNIQUE PRIMARY KEY, name VARCHAR(10), subject VARCHAR(10),
                        result DECIMAL(5,2))" );
        if(query.exec())
        {
            ui->textBox->append("Table created");
        }
        else
        {
            ui->textBox->append("Error");
            ui->textBox->append("MySQL error:" + query.lastError().text());
            ui->textBox->append("MySQL error code:"+ QString::number(query.lastError().number()));
        }
            db.close();
    }
    

    代码不算复杂,就不加注释了。
    ui->textBox是Window上的控件,不是这个问题的关键。
    摘取与数据库相关的部分,放到自己的其它代码中。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 matlab有关常微分方程的问题求解决
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?
  • ¥100 求三轴之间相互配合画圆以及直线的算法
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考