开发者论坛

 找回密码
 注册 (请使用非IE浏览器)
查看: 17283|回复: 11

SQLite 在 .net 下如何高速写入?

[复制链接]

0

精华

56

贡献

376

赞扬

帖子
208
软币
1939
在线时间
180 小时
注册时间
2013-8-17
发表于 2013-8-19 09:11:05 | 显示全部楼层 |阅读模式
SQLite 在 .net 下如何高速写入?在 C# 中,用 ACCESS能高速写入,但是用SQLite不行;我在C#下0.1秒采集1次数据同时要实时保存;用ACCESS采集保存数据能实现;但是用
SQLite 实现不了,大伙用什么好的办法吗?
回复

使用道具 举报

0

精华

186

贡献

386

赞扬

帖子
246
软币
7892
在线时间
1875 小时
注册时间
2013-6-30
发表于 2013-8-20 23:12:33 | 显示全部楼层
sqlite速度更快,容量更高。用法类似SQL.
回复

使用道具 举报

0

精华

8

贡献

43

赞扬

帖子
59
软币
541
在线时间
97 小时
注册时间
2013-7-17
发表于 2013-8-21 13:50:55 | 显示全部楼层
直接操作 API
回复

使用道具 举报

0

精华

56

贡献

376

赞扬

帖子
208
软币
1939
在线时间
180 小时
注册时间
2013-8-17
 楼主| 发表于 2013-8-21 15:17:03 | 显示全部楼层
有高速操作的源码,学习下,谢谢。
回复

使用道具 举报

0

精华

79

贡献

36

赞扬

帖子
125
软币
1754
在线时间
107 小时
注册时间
2013-7-1
发表于 2013-8-24 01:11:17 | 显示全部楼层
稍微注意下锁级别
回复

使用道具 举报

0

精华

5057

贡献

5184

赞扬

管理员

帖子
1148
软币
20781
在线时间
4297 小时
注册时间
2013-6-7

黄马甲

发表于 2013-9-5 21:55:35 | 显示全部楼层
写个数据队列,采集的数据先保存在队列中,然后另开一个线程负责每攒齐1000条数据,事务提交写入数据库一次。

以你的速度采集1000条数据要用100秒
而事务提交保存1000条数据 耗时1秒不到。
回复

使用道具 举报

0

精华

23

贡献

15

赞扬

帖子
136
软币
685
在线时间
84 小时
注册时间
2013-7-8
发表于 2013-9-7 11:01:01 | 显示全部楼层
在"System.Data.SQLite"开源控件的help文件里,有讲到高速效能的语法议题主要就是擅用Prepared Statement及Transaction的语法
毕竟这类File DB的效能,跟其Provider的写法有很大关系,最好配合它。

语法摘录如下图片:

回复

使用道具 举报

0

精华

56

贡献

376

赞扬

帖子
208
软币
1939
在线时间
180 小时
注册时间
2013-8-17
 楼主| 发表于 2013-9-9 09:34:27 | 显示全部楼层
tomexou 发表于 2013-9-7 11:01
在"System.Data.SQLite"开源控件的help文件里,有讲到高速效能的语法议题主要就是擅用Prepared Statement及 ...

谢谢,看看。。。。。我用ACCESS时,基本上0.1秒向数据库写1次数据,不用考虑事物和提交什么的;只要不突然断电或非法结束程序,数据都没有问题。SQLite 好像必须启动事物,提交。效率慢。
回复

使用道具 举报

0

精华

56

贡献

21

赞扬

帖子
250
软币
1755
在线时间
199 小时
注册时间
2013-8-28
发表于 2013-9-10 05:45:14 | 显示全部楼层
个人的实践经验是不能简单套用Access的经验来使用SQLite,而更多是使用大型数据库的方法
回复

使用道具 举报

0

精华

23

贡献

15

赞扬

帖子
136
软币
685
在线时间
84 小时
注册时间
2013-7-8
发表于 2013-9-10 09:17:19 | 显示全部楼层
x_ls 发表于 2013-9-9 09:34
谢谢,看看。。。。。我用ACCESS时,基本上0.1秒向数据库写1次数据,不用考虑事物和提交什么的;只要不突 ...

Access在效率上,绝对比不上SQLite的
你可以再多查看网上对SQLite的效能压力测试报告!

不同的DB Provider,总有各自些微的语法
SQLite文件写得那种Prepared Statement及Traction的大量写法
我觉得也符合ADO.NET的精神,在大型数据库也是这样的。
回复

使用道具 举报

0

精华

160

贡献

2005

赞扬

帖子
698
软币
8864
在线时间
1078 小时
注册时间
2013-8-1
发表于 2015-3-27 23:18:27 | 显示全部楼层
研究研究再说。
回复

使用道具 举报

0

精华

0

贡献

0

赞扬

帖子
13
软币
128
在线时间
8 小时
注册时间
2014-12-21
发表于 2015-4-29 03:25:22 | 显示全部楼层
我是二楼吗???
回复

使用道具 举报

Archiver|手机版|小黑屋|开发者网 ( 苏ICP备08004430号-2 )
版权所有:南京韵文教育信息咨询有限公司

GMT+8, 2024-3-29 19:14

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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