开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 293|回复: 5
收起左侧

[求助] 求精通sqlite大佬帮忙看看

[复制链接]
结帖率:92% (12/13)
发表于 2024-4-8 22:22:36 | 显示全部楼层 |阅读模式   湖南省湘潭市
本帖最后由 易小超 于 2024-4-8 23:03 编辑

我这样写,文件数量少的时候速度很快,可超过10w左右,就变得很慢
我现在60w文件,差不多要写入3天左右,有没有大佬帮忙看下怎么优化下
VX截图_20240408230324.png
  
如果 (sqlite.打开 (取特定目录 (3)“\” + 编辑框名字.内容 + “.db”, ))
如果 (sqlite.表是否存在 (“lin”))
如果真 (sql.打开 (“lin”, sqlite))
文件_枚举 (编辑框地址.内容 + “/”, “*.txt”, 文本数组, 真, 假, )  ' C:\012.txt
数量 = 取数组成员数 (文本数组)
如果真 (数量 > 9)
t1 = 取启动时间 ()
计次循环首 (10, i)
sql.插入 ()  ' sql.写字段值 (“path”, 文本数组 [1])
sql.写字段值 (“path”, 编码_UTF8编码 (文本数组 [1], ))
sql.提交 ()
计次循环尾 ()
t2 = 取启动时间 ()
间隔 = t2 - t1
信息 = “读取到共计文本数量:”到文本 (数量)#换行符#换行符
信息 = 信息 + “单个耗时(毫秒):”到文本 (间隔 ÷ 10)#换行符
信息 = 信息 + “预计耗时(分钟):”到文本 (间隔 × 数量 ÷ 10 ÷ 60000)#换行符#换行符
信息 = 信息 + “是否继续进行,请选择”
如果真 (信息框 (信息, 4, , ) = 6)
sqlite.关闭 ()
按钮_读取.禁止 = 假
返回 ()


计次循环首 (数量 - 10, i)
sql.插入 ()
sql.写字段值 (“path”, 编码_UTF8编码 (文本数组 [i + 10], ))
sql.提交 ()
计次循环尾 ()
信息框 (“读取结束!!!”, 0, , )

信息框 (“不可以插入”, 0, , )

信息框 (“打开失败”, 0, , )
sqlite.关闭 ()
按钮_读取.禁止 = 假


i支持库列表   支持库注释   
SqliteDBSqlite数据库支持库
shell操作系统界面功能支持库

例子.e

861.94 KB, 下载次数: 11, 下载积分: 精币 -2 枚

点评

我发在VIP悬赏了,有三点荣誉值,求求大佬们帮忙看看   湖南省湘潭市  发表于 2024-4-8 22:24

结帖率:100% (2/2)

签到天数: 20 天

发表于 2024-4-8 22:40:42 | 显示全部楼层   四川省绵阳市
调用显性事务.不要用原装.自己写SQL
回复 支持 反对

使用道具 举报

结帖率:100% (2/2)

签到天数: 19 天

发表于 2024-4-8 22:45:18 | 显示全部楼层   广东省广州市
不知道你插入的数据是啥样的 60w要插入3天有点久了   别用支持库的 自己写sql语句   换论坛上那些成品模块的试试看
db.png
回复 支持 反对

使用道具 举报

结帖率:50% (1/2)

签到天数: 19 天

发表于 2024-4-8 22:56:29 | 显示全部楼层   广东省东莞市
没下载 盲猜:时间耗费在文本处理  或者每条数据都插入一次

可以减少文本处理或者把多次写为同一条sql语句里 多次插入操作改为1次
回复 支持 反对

使用道具 举报

结帖率:83% (5/6)

签到天数: 11 天

发表于 2024-4-25 19:03:44 | 显示全部楼层   广东省广州市
用sql直接调用试试,弄个多线程,分割写入
回复 支持 反对

使用道具 举报

  高级模式
B Color Image Link Quote Code Smilies |上传

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 诚聘英才| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 800073686,邮箱:800073686@b.qq.com
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表