qt mysql增删改查
时间: 2023-09-15 19:20:04 浏览: 108
在Qt中使用MySQL进行增删改查操作需要先安装MySQL驱动程序。可以通过Qt Maintenance Tool来安装Qt自带的MySQL驱动程序。如果你没有安装过MySQL驱动程序,可以按照以下步骤来安装。
1. 打开Qt Maintenance Tool。
2. 选择"添加或删除组件"。
3. 在左侧的"可用组件"列表中找到"Qt",展开它。
4. 在"Qt"下找到"Qt 5.15.0"(或其他版本号),展开它。
5. 在"Qt 5.15.0"下找到"Qt 5.15.0 MSVC2019 64-bit"(或其他编译器版本),展开它。
6. 在"Qt 5.15.0 MSVC2019 64-bit"下找到"Qt 5.15.0 MSVC2019 64-bit Components",展开它。
7. 在"Qt 5.15.0 MSVC2019 64-bit Components"下找到"Qt Data Access",勾选它。
8. 点击"安装"按钮进行安装。
安装完成后,就可以在Qt项目中使用MySQL数据库了。下面是一个简单的Qt控制台程序,演示了如何进行MySQL的增删改查操作。
```cpp
#include <QCoreApplication>
#include <QtSql>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
// 连接MySQL数据库
QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
db.setHostName("localhost");
db.setDatabaseName("test");
db.setUserName("root");
db.setPassword("password");
if (!db.open()) {
qDebug() << "无法连接数据库";
return -1;
}
// 增加数据
QSqlQuery query;
query.prepare("INSERT INTO student (name, age, score) VALUES (:name, :age, :score)");
query.bindValue(":name", "Tom");
query.bindValue(":age", 18);
query.bindValue(":score", 90);
if (!query.exec()) {
qDebug() << "无法插入数据";
return -1;
}
// 修改数据
query.prepare("UPDATE student SET score=:score WHERE name=:name");
query.bindValue(":name", "Tom");
query.bindValue(":score", 95);
if (!query.exec()) {
qDebug() << "无法修改数据";
return -1;
}
// 查询数据
if (!query.exec("SELECT name, age, score FROM student")) {
qDebug() << "无法查询数据";
return -1;
}
while (query.next()) {
QString name = query.value(0).toString();
int age = query.value(1).toInt();
int score = query.value(2).toInt();
qDebug() << name << age << score;
}
// 删除数据
query.prepare("DELETE FROM student WHERE name=:name");
query.bindValue(":name", "Tom");
if (!query.exec()) {
qDebug() << "无法删除数据";
return -1;
}
return a.exec();
}
```
在这个例子中,我假设你已经在MySQL数据库中创建了一个名为"test"的数据库,并在其中创建了一个名为"student"的表。"student"表中包含三个字段:name、age、score,分别表示学生的姓名、年龄、成绩。
需要注意的是,这个例子中使用的是Qt自带的MySQL驱动程序。如果你想使用其他的MySQL驱动程序,需要按照驱动程序的要求进行相应的配置。
阅读全文