Skip to content

代码 ​

c++
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
db.setDatabaseName("E://Learning//QT//code//Qlog//db//file3.db");
if (!db.open()) {
    qWarning() << "Failed to connect to database!";
    return;
}
QSqlQuery query;

QString createTableQuery = "CREATE TABLE IF NOT EXISTS myTable ("
            "id INTEGER PRIMARY KEY AUTOINCREMENT,"
            "name VARCHAR(100),"
            "age INTEGER"
            ");";

query.exec(createTableQuery);
if (!query.isActive()) {
    qWarning() << "Failed to create table!";
    return;
}

QString insertQuery = "INSERT INTO myTable (name, age) VALUES ('John Doe', 30);";
query.exec(insertQuery);

if (!query.isActive()) {
    qWarning() << "Failed to insert data!";
    return;
}

QString selectQuery = "SELECT * FROM myTable;";
query.exec(selectQuery);

if (!query.isActive()) {
    qWarning() << "Failed to retrieve data!";
    return;
}
while (query.next()) {
    int id = query.value(0).toInt();
    QString name = query.value(1).toString();
    int age = query.value(2).toInt();

    qDebug() << "ID:" << id << "Name:" << name << "Age:" << age;
}
// 鏇存柊鏁版嵁
QString updateQuery = "UPDATE myTable SET age = 35 WHERE name = 'John Doe';";
query.exec(updateQuery);

if (!query.isActive()) {
    qWarning() << "Failed to update data!";
    return;
}

// 鍒犻櫎鏁版嵁
QString deleteQuery = "DELETE FROM myTable WHERE name = 'John Doe';";
query.exec(deleteQuery);

if (!query.isActive()) {
    qWarning() << "Failed to delete data!";
    return;
}

学 习 记 录