您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 基于sqlite的Qt-数据库封装---开源中国社区
15-6-1基于sqlite的Qt数据库封装-开源中国社区首页开源项目Java开源软件C#开源软件PHP开源软件C/C++开源软件Ruby开源软件Python开源软件Go开源软件JS开源软件问答技术问答»技术分享»IT大杂烩»职业生涯»站务/建议»支付宝专区»MoPaaS专区»开源硬件专区»代码博客翻译资讯移动开发Android开发专区iOS开发专区iOS代码库WindowsPhone招聘城市圈你还没加入城市圈全部城市圈xuyanghpu,您好我的空间站内留言我的讨论记录我分享的代码我的博客我关注的人我的收藏夹个人资料修改更改我的头像|添加软件|投递新闻|退出开源中国代码分享当前位置:15-6-1基于sqlite的Qt数据库封装-开源中国社区分享到:收藏+4踩顶0[全屏查看所有代码]代码分享»C/C++»数据库编程资讯、软件、分享、代码、博客搜索基于sqlite的Qt数据库封装萨斯辈的呼唤发布于2013年10月31日11时,5评/1142阅为了方便大家对Qt数据库的操作,课余时间自己写的一个类。分享给大家标签:SQLiteQt代码片段(2)1.[代码]mydata.h1234567891011121314151617181920212223242526272829303132333435363738/********************************************************************************Copyright(C)2013C,g**Allrightsreserved.**Contact:1213125967@qq.com**Pleasekeeptheauthorcontactinformation.**2013-10-31******************************************************************************/#ifndefMYDATA_H#defineMYDATA_H#includeQObject#includeQString#includeQtSql/QSqlTableModel#includeQtSql/QSqlQuery#includeQStringList#includeQtSql/QSqlDatabaseclassmydata:publicQObject{Q_OBJECTpublic:explicitmydata(QObject*parent=0);~mydata();voidSetTableName(QStringtable);boolopendatabase();boolinsert(QString&table,QStringList&names,QStringList&values);boolUpdata(QString&table,QStringList&names,QStringList&values,QString&expression);booldel(QString&table,QString&expression);voidGetValues(QString&table,QStringList&values);private:QSqlTableModel*model;QSqlDatabase_db;QString_tableName;?15-6-1基于sqlite的Qt数据库封装-开源中国社区[代码]mydata.cpp39404142};#endif//MYDATA_H123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354/********************************************************************************Copyright(C)2013C,g**Allrightsreserved.**Contact:1213125967@qq.com**Pleasekeeptheauthorcontactinformation.**2013-10-31******************************************************************************/#includeQtSql/QSqlQuery#includeQObject#includemydata.hmydata::mydata(QObject*parent):QObject(parent){}mydata::~mydata(){_db.close();}voidmydata::SetTableName(QStringtable){_tableName=table+.db;}/*打开数据库.*/boolmydata::opendatabase(){_db=QSqlDatabase::addDatabase(QSQLITE);_db.setDatabaseName(_tableName);return_db.open();}/*插入函数.构造SQL插入语句.*/boolmydata::insert(QString&table,QStringList&names,QStringList&values){if(names.size()!=values.size()){returnfalse;}QSqlQueryquery(QSqlDatabase::database());QStringsql=QString(insertinto)+table+QString(();?15-6-1基于sqlite的Qt数据库封装-开源中国社区(i=0;inames.size();i++){sql=sql+names.value(i);if(i!=names.size()-1){sql+=QString(,);}else{sql=sql+QString());}}sql=sql+QString(values();for(i=0;ivalues.size();i++){sql=sql+QString(')+values.value(i)+QString(');if(i!=values.size()-1){sql=sql+QString(,);}}sql=sql+QString());if(query.exec(sql)){returntrue;}else{returnfalse;}}/*修改函数.构造SQL修改语句.*/boolmydata::Updata(QString&table,QStringList&names,QStringList&values,QString&expression){if(names.size()!=values.size()){returnfalse;}//UPDATE表名称SET列名称=新值WHERE列名称=某值QSqlQueryquery(QSqlDatabase::database());QStringsql=QString(update)+table+QString(set);for(inti=0;inames.size();i++){sql=sql+names.value(i);sql=sql+QString(=');sql=sql+values.value(i);sql=sql+QString(');if(i!=names.size()-1){sql=sql+QString(,);}15-6-1基于sqlite的Qt数据库封装-开源中国社区举报开源中国-程序员在线工具:Git代码托管API文档大全(120+)JS在线编辑演示二维码更多»相关的代码(122)58回/13506阅[C/C++]Qt读写Excel,并显示到tablewidget3年前Byyaoboyuan10回/13161阅[Java]Android下的SQLite操作封装——DatabaseUtil4年前By红薯118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160}sql=sql+QString(where)+expression;if(query.exec(sql)){returntrue;}else{returnfalse;}}/*删除函数.构造SQL删除语句.*/boolmydata::del(QString&table,QString&expression){//DELETEFROM表名称WHERE列名称=值QSqlQueryquery(QSqlDatabase::database());QStringsql=QString(deletefrom)+table+QString(where)+expression;if(query.exec(sql)){returntrue;}else{returnfalse;}}voidmydata::GetValues(QString&table,QStringList&values){QSqlQueryquery(QSqlDatabase::database());QStringsql=QString(select*from)+table;query.exec(sql);while(query.next()){valuesquery.value(0).toString();}}京东送好礼全场底价手机电脑服饰家电等,心动特价比来比去还是京东便宜!15-6-1基于sqlite的Qt数据库封装-开源中国社区回/12775阅[C/C++]Qt设置透明按钮其实很简单5年前By鉴客33回/11101阅[C/C++]我自己闲的无聊写个了多线程下载工具4年前By王振威33回/11028阅[C/C++]Qt写的五子棋人机对弈程序4年前By自由民8回/10818阅[C/C++]QT中文乱码解决5年前By李永波16回/10617阅[C/C++]用qt实现类似qq截图的工具4年前By乔老爷7回/9165阅[C/C++]不用SDL的QT+FFMPEG播放器5年前By鉴客8回/7406阅[C/C++]Qt-在表格(QTableView)中插入喜好设置4年前Byxiangxw1回/7228阅[C/C++]Qt解析xml格式的例子5年前By红薯显示所有»发表评论回到顶部网友评论(5)1楼:janliz发表于2013-10-3113:43回复此评论顶一下~~2楼:AliceLJM发表于2013-10-3114:19回复此评论忍不住说几句啊:删除函数最后可以写成:retur
本文标题:基于sqlite的Qt-数据库封装---开源中国社区
链接地址:https://www.777doc.com/doc-1336588 .html