前端之家收集整理的这篇文章主要介绍了
SQLite内存数据库与硬盘数据库,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_
502_0@
sqlite是一个非常方便好用的嵌入式
数据库,没有独立的进程,随着应用程序的进程一起启动。
@H_
502_0@它可以选择是内存
数据库还是硬盘
数据库,通常在内存中进行数据方面的操作比硬盘上的操作快几个
数量级。
@H_
502_0@在特定环境下,可以先在内存中操作
数据库,然后再将数据持久化到硬盘上。
@H_
502_0@具体
代码如下:
#encoding=utf-8
import sqlite3
import StringIO
def query(db,sql):
cur = db.cursor()
cur.execute(sql)
for row in cur:
print row
cur.close()
def execute_sql(db,sql):
cur = db.cursor()
cur.execute(sql)
cur.close()
db.commit()
if __name__=='__main__':
#use memory database
db = sqlite3.connect(':memory:')
sql1 = "create table tb_memory(id integer primary key,name text)"
sql2 = "insert into tb_memory(name) values('aaaaaaaaaaaaaaa')"
sql3 = "insert into tb_memory(name) values('bbbbbbbbbbbbbbb')"
sql4 = "insert into tb_memory(name) values('ccccccccccccccc')"
sql5 = "select * from tb_memory"
execute_sql(db,sql1)
execute_sql(db,sql2)
execute_sql(db,sql3)
execute_sql(db,sql4)
query(db,sql5)
print '---------------------------------------------'
buffer = StringIO.StringIO()
for line in db.iterdump():
buffer.write(line)
db.close()
#execute sql script;write into disk database
db1 = sqlite3.connect("test.db")
cursor = db1.cursor()
cursor.executescript(buffer.getvalue())
cursor.close()
db1.close()
原文链接:https://www.f2er.com/sqlite/200990.html