Qt使用MySQL 总结

本文总结了在RHEL6.3上使用Qt访问MySQL数据库的经验,包括安装环境、Qt与MySQL的连接、Qt中数据库操作及新学知识。通过QSqlQuery和QSqlQueryModel进行数据库操作,了解模态与非模态对话框的使用,并掌握了数据库的基础概念如主键和外键。
摘要由CSDN通过智能技术生成

五天磕磕碰碰终于完成了数据库课程设计-图书管理系统,下面总结下 RHEL6.3使用Qt访问数据库的一些经验。

1.安装环境。

1> 安装MySQL。 添加/删除软件那里,搜索下MySQL,客户端服务端都安装。

2> Qt要使用MySQL,在pro文件中加上 QT+=sql  就可以。

3> 安装个 MySQL-workbenth.  直接官网下载rpm包,安装时发现少了libzip和另外一个文件。在rpm网站搜索下这两个。三个一起安装就可以了。


2. Qt访问MySQL。参考《C++_GUI_Qt_编程》第13章。非常详细。

主要用 QSqlQuery 或者 QSqlQueryModel来操作数据库。

query.isActive检查数据库操作中是否有错误发生。

query.exec("INSERT INTO borrowbook ( Reader_Id, Book_Id, Borrow_Time) "
        "VALUES (?, ?, ?)");
        query.addBindValue(ui->readeridLineEdit->text());
        query.addBindValue(ui->bookidLineEdit->text());
        query.addBindValue(ui->borrowtimeLineEdit->text());
        query.exec();


model->setQuery("update book set Remains='"+ ui->remainsLineEdit->text() +
                            "' where Book_Id='"+ ui->bookidLineEdit->text() +"'");
        model->submit();

 QSqlQueryModel *model = new QSqlQueryModel;
    model->setQuery("SELECT * FROM book");
    model->setHeaderData(0, Qt::Horizontal, QObject::tr("Book ID"));
    model->setHeaderData(1, Qt::Horizontal, QObject::tr("Book Name"));
    model->setHeaderData(2, Qt::Horizontal, QObject::tr("Author"));
    model->setHeaderData(3, Qt::Horizontal, QObject::tr("Publisher"));
    model->setHeaderData(4, Qt::Horizontal, QObject::tr("Number"));
    model->setHeaderData(5, Qt::Horizontal, QObject::tr("Remains"));
    QTableView *view = new QTableView;
    view->setModel(model);
    view->setWindowTitle(QObject::tr("Book Information"));
    view->show();

3.Qt学到的新知识。

对话框有模态和非模态。

模态对话框用 dlg.exec()调用,会返回一个值。非模态用 dlg.show()调用。不返回值。

4. 数据库的理解。理解了主键外键等基础知识。。学会访问数据库。


具体参考此工程源码吧。 已经复制到移动硬盘了~~


评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值