找回密码
 立即注册
收起左侧

Qt Sql使用的简单封装(实用)

1
回复
7969
查看
[复制链接]
累计签到:7 天
连续签到:1 天
来源: 原创 2018-3-22 11:50:57 显示全部楼层 |阅读模式
本帖最后由 你才小清晰 于 2018-4-9 11:18 编辑

基于Qt的sql库简单封装,主要是执行sql相关语句需要输入SQL的语法,这里做了一些封装,使得使用方便.
        SqlService.h 头文件包括一些常用的sql的,打开,插入,删除,更新,获取,错误输出等一些接口.

1.open接口:
    功能:打开指定文件数据库,没有则创建
    参数:name(数据库文件), type(打开方式)
    返回值:返回是否打开成功.

2. createTable接口:
    功能:从已经打开的数据库创建一个指定字段的表格
    参数:table(数据库的某一个表格),map(表格的字段或列字段(key)和类型(value))
    返回值:返回是否创建成功

3. insertRowTable接口:
    功能:向表格插入一行
    参数:table(数据库的某一表格),map(数据的字段或列(key),值(value))
    返回值:返回是否插入成功

4. insterColumnTable接口
    功能:向表格插入一列
    参数:table(数据库的某一表格),name(列字段),type(列的类型)
    返回值:返回是否插入成功

5. updateRowTable接口(1)
    功能:更新表格的一行内容,替换出name对应的值,其余的都替换
    参数:table(数据库的某一表格),name(列字段的值),map(更新的内容)
    返回值:返回是否更新成功

updateRowTable接口(2)
    功能:更新表格的一行内容,替换map的所有内容
    参数:table(数据库的某一表格),targetKey(列字段),targetValue(列字段对应的值),map(更新的内容)
    返回值:返回是否更新成功

6. deleteRowTable接口
    功能:删除表格的一行
    参数:table(数据库的某一表格),name(列字段),value(列字段的值)
    返回值:返回是否删除成功

7. sortTable接口
    功能:按升序排序表格
    参数:table(数据库的某一表格),target(列字段)
    返回值:返回是否排序成功

8. size接口
    功能:返回数据库的搜索结果,注意一般调用该函数是执行了一些数据操作,比如排序,查询数据后.另外调用size函数会重置搜索结果为first
    参数:无参数
    返回值:返回搜索所有结果

9. lastError接口
    功能:返回错误代码
    参数:无参数
    返回值:返回错误代码的值

getSqlQuery接口,getSqlDataBase接口是返回数据库相关类,方便上层有需要的操作

10. isTableExist接口
    功能:判断表格是否存在
    参数:数据库的某一表格
    返回值:返回判断结果

prepare接口
    功能:QSqlQuery prepare的封装
    参数:解析的数据
    返回值:是否操作成功

exec接口
    功能:对QSqlQuery exec的封装
    参数:解析的数据或无参数
    返回值:是否操作成功.

11. getTableInfo接口
    功能:获取表格的所有列字段
    参数:数据库的某一表格
    返回值:返回获取结果QMap<QString, QString>

12. getValues接口
    功能:获取指定的数据库数据(注意:不建议一次获取过多数目)
    参数:page(获取多少页),pageNum(每一页获取多少条)
    返回值:返回获取结果QList<QVariantMap>



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

累计签到:742 天
连续签到:1 天
2018-3-22 20:33:34 显示全部楼层
彳亍   口巴                                                                                 
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了