热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

sqlite3执行命令时占用大量内存用到哪去了?

在使用sqlite3进行开发过程中,使用sqlite3_exec执行操作时会消耗大量内存,而且所占用的内存会一直占用直到数据库关闭才释放,所以这部分内存是用来做什么了?哪位大神清楚可以指点下?
在使用sqlite3进行开发过程中 ,使用sqlite3_exec执行操作时会消耗大量内存,而且所占用的内存会一直占用直到数据库关闭才释放,所以这部分内存是用来做什么了?哪位大神清楚可以指点下?

原本以为数据库为效率是将操作先缓存在内存,直到提交事务时写入文件,像如下这样操作
sqlite3_exec(db,"begin",0,0)
//执行相关操作
sqlite3_exec(db,"commit",0,0)

这样的话提交事务后应该释放这部分内存,但实际并没有。。。。所以这部分就不理解了,想问这部分内存具体用作干嘛了?是数据库机制问题么?是否可以修改不让消耗这么大内存么?

3 个解决方案

#1


用来缓存数据的啊。
可以加快查询速度啊。

#2


引用 1 楼 zjq9931 的回复:
用来缓存数据的啊。
可以加快查询速度啊。


如果是为了缓存数据,这个内存大小是否可以设置呢?因为测试过程中发现,这个内存增长达到一定值后就稳定不再增长了

#3


引用 2 楼 xiang90721 的回复:
Quote: 引用 1 楼 zjq9931 的回复:

用来缓存数据的啊。
可以加快查询速度啊。


如果是为了缓存数据,这个内存大小是否可以设置呢?因为测试过程中发现,这个内存增长达到一定值后就稳定不再增长了

抱歉,详细的我并不了解。
个人感觉应当是可以设定的,但是怎么设定我不知道,也许不能,是软件已经定义好的。

推荐阅读
  • Python使用SQLite1.sqlite3的安装python2.5.x以上版本默认自带sqlite3模块。2.链接sqlite3数据库```#导入sqlite3模块import ... [详细]
  • 州的先生(https:zmister.com)在很多项目中都有使用到SQLite数据库作为数据存储的工具,其中包括一些桌面图形界面程序和线上的Web应用程序。至今为止,它们都运行良 ... [详细]
  • 数据库锁在SQLite中,锁和事务是紧密联系的。为了有效地使用事务,需要了解一些关于如何加锁的知识。SQLite采用粗放型的锁。当一个连接要写数据库,所有其它的连接被锁住,直到写连接 ... [详细]
  • 对于很多想做通讯录,或者很多想对系统通讯录操作的童鞋们肯定都会遇到个问题,系统通讯录操作很麻烦,我能不能直接看看底层联系人表结构呢?如果可以看到的话,那一定能提高相关操作的准确性和效率吧。  不多说, ... [详细]
  • iOS关于移动端SQLite,你想知道的都有
    一、SQLite简介SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它是D.RichardHipp建立的公有领域项目。它的设计目 ... [详细]
  • 转自:http:www.cnblogs.comzeroonep4316346.html如果一个.NET应用要自适应32位64位系统,只需要在项目的“目标平台”设置为“AnyCPU”。但是 ... [详细]
  • 最近用到SQLite数据库,刚开始想用ADO来搞,毕竟经常用,结果发现还挺麻烦,要装SQLite的ODBC驱动,装了以后还是连不上,听说这SQLite是开源项目,可以将开发库引入项目来 ... [详细]
  • mysql和sqlite区别SQLITE是单机数据库。功能简约,小型化,追求最大磁盘效率MYSQL是完善的服务器数据库。功能全面,综合化,追求最大并发效率MYSQL、Sybase、 ... [详细]
  • eclipse学习(第三章:ssh中的Hibernate)——11.Hibernate的缓存(2级缓存,get和load)
    本文介绍了eclipse学习中的第三章内容,主要讲解了ssh中的Hibernate的缓存,包括2级缓存和get方法、load方法的区别。文章还涉及了项目实践和相关知识点的讲解。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 本文介绍了Redis中RDB文件和AOF文件的保存和还原机制。RDB文件用于保存和还原Redis服务器所有数据库中的键值对数据,SAVE命令和BGSAVE命令分别用于阻塞服务器和由子进程执行保存操作。同时执行SAVE命令和BGSAVE命令,以及同时执行两个BGSAVE命令都会产生竞争条件。服务器会保存所有用save选项设置的保存条件,当满足任意一个保存条件时,服务器会自动执行BGSAVE命令。此外,还介绍了RDB文件和AOF文件在操作方面的冲突以及同时执行大量磁盘写入操作的不良影响。 ... [详细]
  • 篇首语:本文由编程笔记#小编为大家整理,主要介绍了软件测试知识点之数据库压力测试方法小结相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 1、PLSQLDeveloper记住登陆密码在使用PLSQLDeveloper时,为了工作方便希望PLSQLDeveloper记住登录Oracle的用户名和密码&#x ... [详细]
  • 背景使用sqlite3的命令实现数据去重,与无效数据删除等操作。所有操作均封装在shellscript中。创建数据库邮件数据库:UserEmail.dbEmail表:TABLE_EM ... [详细]
  • Django 入门学习(3)
    在例4的基础上,我希望直接保存数据到数据库中。Django自带了一个sqlite的数据库,已经配置好了可以直接使用。使用方式和sqlalchemy类似,相当于一 ... [详细]
author-avatar
手机用户2502877051
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有