QT 操作数据库SQLite实例
2013-09-17 10:58
609 查看
#include "widget.h" #include <QApplication> #include <QtSql> #include <QTextCodec> #include <QDebug> int main(int argc, char *argv[]) { QApplication a(argc, argv); QTextCodec::setCodecForTr(QTextCodec::codecForLocale()); /*QStringList drivers = QSqlDatabase::drivers(); //获取支持的SQL驱动 for( int i=0; i!=drivers.count(); i++ ) qDebug() << "driver: " << drivers.at(i); */ QSqlDatabase dbconn=QSqlDatabase::addDatabase("QSQLITE"); //添加数据库驱动 dbconn.setDatabaseName("mytest.db"); //在工程目录新建一个mytest.db的文件 if(!dbconn.open()) { qDebug()<<"error"; } QSqlQuery query(dbconn);//以下执行相关QSL语句 //新建student表,id设置为主键,还有一个name项 query.exec("create table student(id varchar,name varchar)"); query.exec(QObject::tr("insert into student values(1,'李刚')")); query.exec(QObject::tr("insert into student values(2,'苹果')")); query.exec(QObject::tr("insert into student values(3,'葡萄')")); query.prepare("insert into student values(?,?)"); QVariantList ids; ids << 4 << 5 << 6; query.addBindValue(ids); QVariantList names; names << "kevin" << "xiang" << "jie"; query.addBindValue(names); if( !query.execBatch() ) qDebug() << "Error: " << query.lastError(); query.exec("update student set name='xiangjie' where id=5"); //更新 query.exec("delete from student where id=6"); //删除 //query.exec("select id,name from student where id>=2"); query.exec("select * from student"); while(query.next())//query.next()指向查找到的第一条记录,然后每次后移一条记录 { int ele0=query.value(0).toInt();//query.value(0)是id的值,将其转换为int型 QString ele1=query.value(1).toString(); qDebug()<< query.at() << ele0<<ele1;//输出两个值 } query.seek(3); QSqlRecord record = query.record(); //获取当前行记录 qDebug() << "id: " << record.value("id").toInt() << " name: " << record.value("name").toString(); QSqlField field = record.field(1); //获取索引字段 qDebug() << "field name:" << field.name() << " field value:" << field.value().toString(); query.exec(QObject::tr("drop table student")); //删除table //return a.exec(); }
相关文章推荐
- Qt之操作数据库(SQLite)实例
- Qt之操作数据库(SQLite)实例
- Qt之操作数据库(SQLite)实例
- Qt数据库操作 连接SQLite和MySQL数据库实例
- Qt数据库操作 连接SQLite和MySQL数据库实例
- QT 操作数据库SQLite实例
- Qt之操作数据库(SQLite)实例
- 【不全,仅参考】iOS开发数据库操作之SQLite及Mysql操作实例
- sqlite3的C语言API操作数据库的实例分析
- Android SQLite数据库操作实例
- Qt数据库 QSqlTableModel实例操作
- QT 操作SQLITE3 数据库
- 使用SQLiteOpenHelper获取用于操作数据库的SQLiteDatabase实例
- QT SQLite 多数据库操作大全
- Android SQLite数据库操作实例
- [iOS][更新]iOS开发数据库操作之SQLite及Mysql操作实例
- Qt之操作数据库(SQLite)
- android数据库SQLite操作实例
- [Sqlite]-->嵌入式数据库事务理解以及实例操作
- Qt之操作数据库(SQLite)