Dump Sqlite3内存数据库

前端之家收集整理的这篇文章主要介绍了Dump Sqlite3内存数据库前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
  1. #encoding=utf-8
  2. # 甄码农代码 2012 03 06
  3. # 打开sqlite3内存数据库,执行操作,将内存数据库保存到文件
  4.  
  5. import sqlite3
  6. import StringIO
  7.  
  8. #使用:memory:标识打开的是内存数据库
  9. con = sqlite3.connect(":memory:")
  10. cur = con.cursor()
  11. #使用executescript可以执行多个脚本
  12. cur.executescript("""
  13. create table quotes(
  14. rid INTEGER PRIMARY KEY AUTOINCREMENT,code char(10) NOT NULL,high real,open real,low real,close real,amount real,volume real)""")
  15.  
  16.  
  17. #execute执行脚本,参数要放到元组中
  18. cur.execute('insert into quotes(code,high,open,low,close,amount,volume) values(?,?,?)',('600036',12.0,11.8,11.7,11.9,999999,8999))
  19.  
  20. #打印数据表数据
  21. cur.execute("select * from quotes")
  22. print cur.fetchall()
  23.  
  24. #生成内存数据库脚本
  25. str_buffer = StringIO.StringIO()
  26. #con.itrdump() dump all sqls
  27. for line in con.iterdump():
  28. str_buffer.write('%s\n' % line)
  29.  
  30. #关闭内存数据库
  31. cur.close()
  32.  
  33.  
  34. #打开文件数据库
  35. con_file = sqlite3.connect('quotes.db3')
  36. cur_file = con_file.cursor()
  37. #执行内存数据库脚本
  38. cur_file.executescript(str_buffer.getvalue())
  39. #关闭文件数据库
  40. cur_file.close()

猜你在找的Sqlite相关文章