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