Python操作SQLite数据库过程解析

yipeiwu_com7年前Python基础

SQLite是一款轻型的数据库,是遵守ACID的关系型数据库管理系统。

不像常见的客户-服务器范例,SQLite引擎不是个程序与之通信的独立进程,而是连接到程序中成为它的一个主要部分。所以主要的通信协议是在编程语言内的直接API调用。

Python标准库包含一个SQLite包装器:使用模块sqlite3实现的PySQLite。

下面是一个操作SQLite数据库的例子:创建表、插入记录、查询记录。

import sqlite3
#创建直接到数据库文件的连接,如果文件不存在则自动创建
conn = sqlite3.connect('testdb.db')
#创建一个游标向服务器发送命令及接收结果
cursor = conn.cursor()
#创建表user
sql = '''
create table user(
id integer primary key,
name text,
sex text
)
'''
#执行
cursor.execute(sql)
#插入一条数据
sql = 'insert into user(name,sex) values("小明","男")'
cursor.execute(sql)
#插入多条数据
sql = 'insert into user(name,sex) values(?,?)'
vals = (('小李','男'),('小红','女'))
cursor.executemany(sql,vals)
#有增删改的话需要提交
conn.commit()
sql = 'select * from user'
cursor.execute(sql)
#游标有3个方法可以请求结果
#cursor.fetchone 获取一行结果
#cursor.fetmany 获取指定的任意行结果
#cursor.fetchall 获取所有结果
for row in cursor.fetchall():
  print(row)
#关闭游标和连接
cursor.close()
conn.close()

运行结果:

(1, '小明', '男')
(2, '小李', '男')
(3, '小红', '女')

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python使用PIL模块实现给图片打水印的方法

本文实例讲述了python使用PIL模块实现给图片打水印的方法。分享给大家供大家参考。具体实现方法如下: import Image, ImageEnhance def reduce_...

python并发编程多进程 互斥锁原理解析

运行多进程 每个子进程的内存空间是互相隔离的 进程之间数据不能共享的 互斥锁 但是进程之间都是运行在一个操作系统上,进程之间数据不共享,但是共享同一套文件系统,所以访问同一个文件,或同...

Numpy之random函数使用学习

random模块用于生成随机数,下面看看模块中一些常用函数的用法: numpy.random.rand(d0, d1, ..., dn):生成一个[0,1)之间的随机浮点数或N维浮点...

Python从列表推导到zip()函数的5种技巧总结

在本文中,作者介绍了 5 种方法,也许在入门阶段时,我们还不太了解它们,但在实战中这 5 个技巧非常实用。 字符串运算 字符串本质上也是一种元组,但是字符串有很多「运算」方式。最直观的是...

Python3 tkinter 实现文件读取及保存功能

Python3 tkinter 实现文件读取及保存功能

tkinter介绍 tkinter是python自带的GUI库,是对图形库TK的封装 tkinter是一个跨平台的GUI库,开发的程序可以在win,linux或者mac下运行 #...