zoukankan      html  css  js  c++  java
  • python 操作sqlite 数据库

     
     
    '''SQLite
    
        首先介绍一下sqlite
        数据库
        SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统
        比起Mysql、PostgreSQL这两款开源的世界
        著名数据库管理系统来讲,它的处理速度比他们都快
          SQLite引擎不是个程序与之通信的独立进程,而是连接到程序中成为它的一个主要部分。所以主要的通信协议是在编程语言内的直接API调用。这在消耗总量、
        延迟时间和整体简单性上有积极的作用。整个数据库(定义、表、索引和数据本身)都在宿主主机上存储在一个单一的文件中。它的简单的设计是通过在开始一个事
        务的时候锁定整个数据文件而完成的
        好了
        先简单介绍点
        下面主要说
        python
        如何使用:
        look:'''
      
    from pysqlite2 import dbapi2 as sqlite


    def c_sqlite():
    """
    创建数据表
    :return:
    """
    conn = sqlite.connect('/opt/aurora/var/task_id.db') # 链接数据库
    conn.text_factory = str
    cur = conn.cursor() # 游标
    c_sql = '''
    CREATE TABLE IF NOT EXISTS task_id_table (
    id INTEGER PRIMARY KEY,
    ipAddress TEXT,
    platform_id TEXT,
    count_id TEXT,
    task_id TEXT);
    '''
    cur.execute(c_sql)
    conn.commit()
    cur.close()

    def i_sqlite(item, taskid):
    """
        数据插入
    更新
    :return:
    """
    conn = sqlite.connect('/opt/aurora/var/task_id.db')
    conn.text_factory = str
    cur = conn.cursor()
    sql1 = '''
    SELECT count(platform_id) FROM task_id_table WHERE platform_id =? # 部分有个人逻辑 请自行忽略
    '''
    record = [taskid]
    cur.execute(sql1, record)
    res = cur.fetchall()[0][0]
    if res < 1:
    sql = '''
    INSERT INTO task_id_table(ipAddress, platform_id,count_id) VALUES (?,?,?) #注意占位符
    '''
    item.append('1')
    record = item
    cur.execute(sql, record)
    conn.commit()
    else:
    sql = '''
    UPDATE task_id_table SET count_id = ? WHERE platform_id == ?
    '''
    record = []
    record.append('2')
    record.append(item[1])
    cur.execute(sql, record)
    conn.commit()

    cur.close()


    #ok
    #This is simple
    #operation.



     
  • 相关阅读:
    option 变为不可选
    html表格 横跨多行跨多列
    ultraEdit 关键字颜色 与 字体模糊 解决办法
    更改U盘 硬盘背景
    js 函数带值。调用
    Blitz: a collection of software designed to support a universitylevel course on Operating Systems
    不错的Qt入门
    Linux命令行技巧zz
    rvalue_references
    http://channel9.msdn.com/
  • 原文地址:https://www.cnblogs.com/nanyu/p/11393249.html
Copyright © 2011-2022 走看看