【转】sqlite3.connect
conn=sqlite3.connect(‘urls.db‘)
conn=sqlite3 . connect ( ":memory:" )
SQLite不仅可以把数据库 放在硬盘上,还可以放在内存中(sqlite3_open(":memory:", &db)),经测试,同样条件下数据库放在内存中比放在硬盘上插入记录速度快差不多3倍。但数据库放在内存中时有如下缺陷:
1、断电或程序崩溃后数据库就会消失,你需要定期Attach到硬盘上备份;
2、在内存中的数据库不能被别的进程访问(因为没名字,以后可能支持),即使在多线程下,也得使用同一句柄;
3、不支持像在硬盘上的读写互斥处理,自己加锁吧。
看来,追求速度要付出代价啊!
有没有什么方法折衷一下,就是 conn=sqlite3 . connect ( ":memory:" )使用完之后,再保存在本地呢?
记录你执行过的sql,在使用完之后再connect("memory.db"),将sql重新执行一次,就可以保存了 也不太好
相关推荐
dearm 2020-08-25
loveandroid0 2020-06-08
loveandroid0 2020-05-31
Attend 2020-05-27
huacuilaifa 2020-05-27
MFCJCK 2020-05-16
ggwxk0 2020-05-07
MFCJCK 2020-05-05
仁鱼 2020-03-26
huavhuahua 2020-03-03
MFCJCK 2020-01-11
Dlanguage 2020-01-03
loveandroid0 2019-12-30
wzxxtt0 2019-12-29
wyqwilliam 2019-12-21
宿舍 2019-11-30
昭君出塞 2011-03-27
fuzhangpeng 2011-08-09
踩风火轮的乌龟 2008-03-22