Qt Sqlite是本文介绍的内容,SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快。
1.要实现的功能:一个表finger_table,有三个字段,pageId(INTEGER) name(text) is_empty(INTEGER)要找出 is_empty为0的记录的个数
- QSqlQuery query;
- query.prepare("select count(pageId) from finger_table where is_empty = 0 ");//分行写的时候注意空格不能少
- if(!query.exec())
- {
- qDebug()<< query.lastError().text();
- return;
- }
- if(!query.first())//取出第一条记录,这个忘了下面一条query.value(0)是执行不了的,
- //会出现“QSqlQuery::value: not positioned on a valid record”错误
- {
- qDebug()<<query.lastError().text();
- }
- int num = query.value(0).toInt(&ok);//这个就可以取得需要的数据了
2.表2 table2 有三个字段 id(INTEGER PRIMARY KEY) name(text) time(text),用QTableView显示要实现的功能是删除 tableview中选中的当前行
- QSqlQuery query ;
- query.prepare("delete from login_record "
- "where id = :id ");
- QModelIndex index = this->query_login_view->currentIndex();
- int idnum = this->table_model_login_history->data(this->table_model_login_history->index(index.row(),0)).toInt();
- query.bindValue(":id",idnum);
- if(!query.exec())
- {
- qDebug()<<query.lastError().text();
- return;
- }
小结:关于浅谈Qt Sqlite (总结篇)的内容介绍完了,内容不多,希望本文对你有所帮助!