社区
其他数据库
帖子详情
频繁更新sqlite3数据库导致数据库被锁定的问题!
qfpcn
2008-12-23 09:17:04
我是在linux下用c写的程序,用root用户执行。
我的程序中每1秒左右就需要向sqlite数据库中插入1条记录,每次大概插入1000条左右就会导致数据库被锁定"database is locked",请问达人如何解决?
注:问题解决了另外给分!
...全文
2845
14
打赏
收藏
频繁更新sqlite3数据库导致数据库被锁定的问题!
我是在linux下用c写的程序,用root用户执行。 我的程序中每1秒左右就需要向sqlite数据库中插入1条记录,每次大概插入1000条左右就会导致数据库被锁定"database is locked",请问达人如何解决? 注:问题解决了另外给分!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
skyjsq
2010-06-07
打赏
举报
回复
一个时间只能有一个query 操作数据库的,多线程的时候要特别注意
iihero
2010-06-07
打赏
举报
回复
[Quote=引用 11 楼 reer 的回复:]
由检查conn.Close()的返回值想到一个问题:
如果sqlite3_finalize()返回SQLITE_BUSY,那这时sqlite3 *p_stmt资源释放了吗?
[/Quote]
如果返回的是busy,肯定有资源没有被释放。
robotdeng
2010-05-13
打赏
举报
回复
单线程不会有锁定的问题。。。
肯定你是采用了多线程,每个线程打开一个connection。如果后一个线程访问时,前一个线程正在执行插入操作,所以就有问题了。
reer
2010-05-13
打赏
举报
回复
由检查conn.Close()的返回值想到一个问题:
如果sqlite3_finalize()返回SQLITE_BUSY,那这时sqlite3 *p_stmt资源释放了吗?
zzmwmh
2010-05-06
打赏
举报
回复
conn不关应该没事吧,不过不要重复的open应该没事吧,开阿关阿更浪费资源,1秒写一次应该不会有问题的
iihero
2010-05-06
打赏
举报
回复
[Quote=引用楼主 qfpcn 的回复:]
我是在linux下用c写的程序,用root用户执行。
我的程序中每1秒左右就需要向sqlite数据库中插入1条记录,每次大概插入1000条左右就会导致数据库被锁定"database is locked",请问达人如何解决?
注:问题解决了另外给分!
[/Quote]
1秒钟写1条,应该问题不大。
关键是你这个应用是多线程并发的吗?那就要注意了。
最好是单线程程序。
fuhanw
2010-04-20
打赏
举报
回复
仔细检查 conn.Close(); !
100%解决问题!
subarashii
2009-05-05
打赏
举报
回复
好像会遇到一些大量的频繁的写数据时,数据库会有问题。
你试试没操作一次都把下面这些东西关闭
stmt.close();
rset.close();
conn.close();
greenkiller
2009-01-13
打赏
举报
回复
我也正在用SQLite做点东西
受教
除了“使用事务方式将一分钟内的记录一起插入”方式,还有其他方法么?
shuifengcun
2009-01-02
打赏
举报
回复
没错
iisbsd
2009-01-02
打赏
举报
回复
如果有代码的话比较好。
ultraedit55
2008-12-31
打赏
举报
回复
ding
cdqy
2008-12-30
打赏
举报
回复
这么频繁的插入,最好是每一分钟,使用事务方式将一分钟内的记录一起插入.
cdqy
2008-12-30
打赏
举报
回复
sqlite3_busy_timeout( db, 200 ); //设置数据库超时等待时间200MS
电子学习资料实验指导书电子线路课程设计题
电子学习资料实验指导书电子线路课程设计题
非标自动化滤清盒自动组装机3D数模+STP格式.rar
非标自动化滤清盒自动组装机3D数模+STP格式.rar
游戏开发基于Python的贪吃蛇小游戏设计与实现:核心逻辑、状态管理与Pygame渲染技术详解
内容概要:本文档是一份关于开发经典小游戏“贪吃蛇”的保姆级毕业设计指导文档,涵盖从游戏规则、功能设计、技术选型到核心代码实现的完整流程。文档以Python + Pygame为技术栈,详细讲解了游戏初始化、蛇的移动逻辑、食物生成、碰撞检测、计分与等级系统、键盘控制及主循环渲染等核心模块,并提供了完整的项目结构和源码示例。采用状态机管理游戏状态,使用列表模拟链表结构存储蛇身,结合方向缓冲机制优化操作体验,同时引入难度递增机制提升可玩性。文末还列举了飞机大战、扫雷、五子棋等同类课题作为拓展参考。; 适合人群:具备一定编程基础、正在进行毕业设计或课程设计的学生,尤其是对游戏开发感兴趣的初级开发者。; 使用场景及目标:①帮助学生独立完成一个功能完整、结构清晰的小游戏项目,用于毕业答辩或课程展示;②深入理解事件驱动编程、状态管理、碰撞检测、定时刷新等基础编程概念;③掌握Python + Pygame开发2D小游戏的核心技能,并具备二次开发与功能拓展能力。; 阅读建议:建议读者按照“规则→设计→代码→运行”的顺序逐步学习,动手实践每个模块并调试代码,重点关注方向缓冲、状态机、食物生成算法等设计细节,同时可尝试实现文末提出的拓展功能以增强项目亮点。
自动化测试实战项目开发全套模板(pytest+requests+Allure 接口自动化)
内容概要:接口自动化测试从 0 到 1 的完整工具包,含 7 个文件:①自动化测试项目结构模板(config/common/data/testcases 分层目录设计说明);②可直接运行的 pytest 接口用例模板(登录/下单/支付链路 + 参数化 + allure 标注);③测试报告与 Allure 集成指南(安装、命令、指标解读、GitLab CI 示例);④测试用例设计模板 Excel(正常/边界/异常/权限场景,关联需求与风险,内置 10 条示例);⑤接口测试数据驱动模板 Excel(请求构造 + 期望结果分离,数据与代码解耦);⑥自动化测试计划模板 Excel(范围/排期/风险/资源四表);⑦AI 提示词模板合集(生成用例、数据驱动改造、封装工具类、测试计划共 6 个模板 + 3 种进阶用法)。 适用人群:测试工程师、后端开发、全栈开发、测试负责人。 使用场景及目标:新项目搭建接口自动化测试框架直接套用;已有项目对照结构自查补齐数据驱动与报告能力;配合 AI 辅助约 10 分钟产出用例初稿,快速提升测试覆盖与回归效率。
前端开发基于history.js的HTML5与HTML4浏览器兼容方案:单页应用无刷新历史状态管理技术实现-50eEO1788270362
内容概要:本文系统介绍了如何利用history.js实现单页应用(SPA)在HTML5c与HTML4浏览器间s草错发的无缝历史状态管理。通过封装原生History API并在不支持的浏览器中自动降级为哈希路由,history.js解决了因浏览器兼容性
导致
的后退按钮失效、URL混乱等
问题
。文章详细讲解了其核心机制,包括状态对象管理、自动模式切换(HTML5 pushState vs HTML4 哈希)、状态数据持久化以及针,对Safari、IE等浏\览器的兼容性修复方案,并提供了从入门到实战的完整示例,涵盖初始化、事,件监听、页面加载及性能优化技巧。;50eEO1788270362 https://www.ahdmhbkj.cn/zuqiuliansai/fajia/ https://www.ahdmhbkj.cn/zuqiuliansai/dejia/ https://www.ahdmhbkj.cn/zuqiuliansai/yijia/ https://www.ahdmhbkj.cn/live/zuqiu/2908.html https://www.ahdmhbkj.cn/news/zuqiu/44355.html
其他数据库
2,208
社区成员
9,519
社区内容
发帖
与我相关
我的任务
其他数据库
其他数据库开发 其他数据库
复制链接
扫一扫
分享
社区描述
其他数据库开发 其他数据库
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章