赞
踩
SQLite是一个轻量级的嵌入型数据库,不需要服务端,可以运行在很多资源非常小的嵌入式系统中。
SQLite的管理客户端,可以使用:
等。
修改.pro文件:
QT += sql
引用的头文件:
#include #include #include #include
qDebug() << QSqlDatabase::drivers();
我的电脑输出的值有:
("QSQLITE", "QODBC", "QODBC3", "QPSQL", "QPSQL7")
里面的QSQLITE表示支持SQLite数据库。
//建立并打开数据库 QSqlDatabase database; database = QSqlDatabase::addDatabase("QSQLITE"); database.setDatabaseName("test.db"); if (!database.open()) { qDebug() << "Error: Failed to connect database." << database.lastError(); } else { qDebug() << "Succeed to connect database." ; }
//创建表格 QSqlQuery sql_query; if(!sql_query.exec("create table users(id int primary key, name text, age int)")) { qDebug() << "Error: Fail to create table."<< sql_query.lastError(); } else { qDebug() << "Table created!"; }
if(!sql_query.exec("INSERT INTO users VALUES(1, "张三", 30)")) { qDebug() << sql_query.lastError(); } else { qDebug() << "inserted success!"; } if(!sql_query.exec("INSERT INTO users VALUES(2, "李四", 30)")) { qDebug() << sql_query.lastError(); } else { qDebug() << "inserted success!"; }
//查询数据 sql_query.exec("select * from users"); if(!sql_query.exec()) { qDebug()<
sql_query.exec("delete from users where id = 1"); if(!sql_query.exec()) { qDebug()<
sql_query.exec("update users set name = "myname" where id = 1"); if(!sql_query.exec()) { qDebug() << sql_query.lastError(); } else { qDebug() << "updated!"; }
sql_query.exec("drop table users"); if(sql_query.exec()) { qDebug() << sql_query.lastError(); } else { qDebug() << "table droped"; }
database.close();
运行效果:会自动生成一个test.db数据库文件。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。