zoukankan      html  css  js  c++  java
  • python 打开sqlite3内存数据库,操作完毕将数据保存到文件数据库

    http://my.oschina.net/u/89296/blog/42717

    #encoding=utf-8
    # 甄码农代码 2012 03 06
    # 打开sqlite3内存数据库,执行操作,将内存数据库保存到文件

    import sqlite3
    import StringIO

    #使用:memory:标识打开的是内存数据库
    con = sqlite3.connect(":memory:")
    cur = con.cursor()
    #使用executescript可以执行多个脚本
    cur.executescript("""
        create table quotes(
            rid INTEGER PRIMARY KEY AUTOINCREMENT,
            code char(10) NOT NULL,
            high real,
            open real,
            low real,
            close real,
            amount real,
            volume real)""")


    #execute执行脚本,参数要放到元组中
    cur.execute('insert into quotes(code,high,open,low,close,amount,volume) values(?,?,?,?,?,?,?)',
                ('600036',12.0,11.8,11.7,11.9,999999,8999))

    #打印数据表数据
    cur.execute("select * from quotes")
    print cur.fetchall()

    #生成内存数据库脚本
    str_buffer = StringIO.StringIO()
    #con.itrdump() dump all sqls
    for line in con.iterdump():
        str_buffer.write('%s\n' % line)

    #关闭内存数据库
    cur.close()


    #打开文件数据库
    con_file = sqlite3.connect('quotes.db3')
    cur_file = con_file.cursor()
    #执行内存数据库脚本
    cur_file.executescript(str_buffer.getvalue())
    #关闭文件数据库
    cur_file.close()

  • 相关阅读:
    WEB之CSS3系列笔记
    WEB之HTML5 系列笔记
    WEB之CSS系列笔记
    WEB 之 HTML 系列笔记
    npm安装(install)出现EPROTO: protocol error, symlink 解决方法
    笔记本电脑联网时没有WIFI列表选项可选
    Windows系统中下载Earthdata数据 2
    matlab cell
    【Linux系统】开启TFTP服务
    【Linux】搭建交叉编译环境
  • 原文地址:https://www.cnblogs.com/lexus/p/2402928.html
Copyright © 2011-2022 走看看