Python操作SQLite数据库过程解析

yipeiwu_com6年前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套接字流重定向实例汇总

将套接字流重定向到标准输入或输出流 #!/usr/bin/env python3 """ 测试socket-stream 重定向模式 """ import sys,os,time f...

python实现对指定输入的字符串逆序输出的6种方法

对于一个给定的字符串,逆序输出,这个任务对于python来说是一种很简单的操作,毕竟强大的列表和字符串处理的一些列函数足以应付这些问题 了,今天总结了一下python中对于字符串的逆序输...

Python实现的计算马氏距离算法示例

Python实现的计算马氏距离算法示例

本文实例讲述了Python实现的计算马氏距离算法。分享给大家供大家参考,具体如下: 我给写成函数调用了 python实现马氏距离源代码: # encoding: utf-8 fro...

Python 3.8新特征之asyncio REPL

前言 我最近都在写一些Python 3.8的新功能介绍的文章,在自己的项目中也在提前体验新的Python版本。为什么我对这个Python 3.8这么有兴趣呢?主要是因为在Python 2...

Python的GUI框架PySide的安装配置教程

Python的GUI框架PySide的安装配置教程

(一)说在前面     Python自带了GUI模块Tkinter,只是界面风格有些老旧。另外就是各种GUI框架了。    ...