QT操作mysql数据库(创建,插入,更新,删除)
Posted issue是fw
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了QT操作mysql数据库(创建,插入,更新,删除)相关的知识,希望对你有一定的参考价值。
首先创建一个mysql
类型的数据库类
设置需要连接到的数据库服务器ip
设置端口号
设置数据库用户名
设置数据库密码
设置操作哪个数据库
QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
db.setHostName("127.0.0.1");//数据库服务器ip
db.setUserName("root");//数据库用户名
db.setPassword("123");//数据库密码
db.setDatabaseName("info");//使用哪个数据库
//端口号就使用默认的3306吧,因为在本地
if( !db.open() )//打开数据库,如果返回false表示打开失败
QMessageBox::warning(this,"错误",db.lastError().text() );//打开失败,显示错误信息
return;
连接上了数据库,那么就来实现功能吧,做一个这样的界面
要求能直接作用于数据库(这个界面就随便用 u i ui ui界面做吧)
首先创建一下这个数据库
QSqlQuery query;
QString sql1 = "create table student(id int primary key auto_increment,name varchar(255),age int,score int);";
query.exec();
然后看一下数据库,长这个样子
然后实现一下添加按钮的槽函数
void Widget::on_Btnadd_clicked()
int id = ui->lineid->text().toInt();
QString name = ui->linename->text();
int age = ui->lineage->text().toInt();
int score = ui->linescore->text().toInt();
QString sql = QString("insert into student(id,name,age,score) values('%1','%2','%3','%4')").arg(id).arg(name).arg(age).arg(score);
QSqlQuery query;
query.exec(sql);
更新按钮的槽函数
void Widget::on_Btnupdate_clicked()
int id = ui->lineid->text().toInt();
QString name = ui->linename->text();
int age = ui->lineage->text().toInt();
int score = ui->linescore->text().toInt();
QString sql = QString("update student set id='%1',name='%2',age='%3',score='%4' where id='%5'").arg(id).arg(name).arg(age).arg(score).arg(id);
QSqlQuery query;
query.exec(sql);
删除按钮的槽函数(按照 i d id id删除)
void Widget::on_Btndel_clicked()
int id = ui->lineid->text().toInt();
QString sql = QString("delete from student where id = '%1'").arg(id);
QSqlQuery query;
query.exec(sql);
以上是关于QT操作mysql数据库(创建,插入,更新,删除)的主要内容,如果未能解决你的问题,请参考以下文章