IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> python SQLite -> 正文阅读

[大数据]python SQLite

Python已经内置了SQLite3,所以可以直接使用import语句导入SQLite3模块。Python操作数据库的通用流程图如下:?

创建SQLite数据库文件

# 使用SQLite

# 创建一个mrsoft.db的数据库文件,创建一个user表,表中包含id和name两个字段

import sqlite3
#连接到SQLite数据库
#创建数据库文件,若文件不存在,则会自动在同级目录下创建文件
conn = sqlite3.connect('mrsoft.db')

#创建一个游标Cursor
cursor = conn.cursor()
#执行SQL语句,创建表
cursor.execute('create table user(id int(10) primary key,name varchar(20))')
#关闭游标
cursor.close()
#关闭Connection连接
conn.close()

运行结果

?这是因为数据库文件已经存在。

操作SQLite

1.新增用户信息
新增信息,使用 insert into 表名(字段名1,字段名2,字段名3,...字段名3) values(字段值1,字段值2,字段值3,...字段值n)
由于是新增数据,所以需要使用commit()方法提交事务。因为对于增加,修改,和删除操作,使用commit()方法提交事务后,如果相应操作失败,可以使用
rollback()回滚到操作之前的状态。
import sqlite3
#连接到SQLite数据库
#创建数据库文件,若文件不存在,则会自动在同级目录下创建文件
conn = sqlite3.connect('mrsoft1.db')
#创建一个游标Cursor
cursor = conn.cursor()
#执行SQL语句,创建表
cursor.execute('create table user(id int(10) primary key,name varchar(20))')
cursor.execute('insert into user(id,name) values(001,"张三")')
cursor.execute('insert into user(id,name) values(002,"李四")')
cursor.execute('insert into user(id,name) values(003,"王二")')

#关闭游标
cursor.close()
#提交事务
conn.commit()
#关闭Connection连接
conn.close()

#再次运行,如果出现
再次运行,如果出现则说明插入成功。
2 查询数据
查询数据,使用SQL语句:select 字段名1,字段名2,字段名3... from 表名 where 查询条件
查询数据通常使用如下3种方式:
fetchone():获取查询结果集中的下一条记录
fetchmany(size):获取指定数量的数据
fetchall():获取结果集的所有记录
import sqlite3
#连接到SQLite数据库
#创建数据库文件,若文件不存在,则会自动在同级目录下创建文件
conn = sqlite3.connect('mrsoft2.sql')
#创建一个游标Cursor
cursor = conn.cursor()
#执行SQL语句,创建表
cursor.execute('create table user(id int(10) primary key,name varchar(20))')
cursor.execute('insert into user(id,name) values(001,"张三")')
cursor.execute('insert into user(id,name) values(002,"李四")')
cursor.execute('insert into user(id,name) values(003,"王二")')
#执行查询语句
cursor.execute('select * from user')
#获取查询结果
result1 = cursor.fetchone()
print('result1:',result1)  #使用fetchone()方法返回结果为为元组



#关闭游标
cursor.close()
#提交事务
conn.commit()
#关闭Connection连接
conn.close()

?运行结果为:

若改为?

result2 = cursor.fetchmany(2)
print('result2:',result2)  #使用fetchmany()结果返回列表,列表元素为元组

则运行结果为:

?

?若改为

result3 = cursor.fetchall()
print('result3:',result3)  #使用fetchall()结果返回列表,列表结果为元组

则运行结果为:

?

若改为


#执行查询语句
cursor.execute('select * from user where id >', (1,))
#获取查询结果


result4 = cursor.fetchall()
print('result4:',result4)  #使用fetchall()结果返回列表,列表结果为元组

?相当于

select * from user where id > 1

则运行结果为:

[(2,'李四'),(3,'王二')]
3 修改表数据
修改数据使用SQL语句:update 表名 set 字段名 = 字段值 where 查询条件
import sqlite3
#连接到SQLite数据库
#创建数据库文件,若文件不存在,则会自动在同级目录下创建文件
conn = sqlite3.connect('mrsoft2.sql')
#创建一个游标Cursor
cursor = conn.cursor()

#执行修改语句
cursor.execute('update user set name = ? where id = ?',('小明',1))

#执行查询语句
cursor.execute('select * from user')
#获取查询结果


result3 = cursor.fetchall()
print('result3:',result3)  #使用fetchall()结果返回列表,列表结果为元组

#关闭游标
cursor.close()
#提交事务
conn.commit()
#关闭Connection连接
conn.close()

结果为:

4 删除表信息
删除表信息使用SQL语句:delete from 表名 where 查询条件
import sqlite3
#连接到SQLite数据库
#创建数据库文件,若文件不存在,则会自动在同级目录下创建文件
conn = sqlite3.connect('mrsoft2.sql')
#创建一个游标Cursor
cursor = conn.cursor()

#执行删除语句
cursor.execute('delete from user where id = ?',(1,))

#执行查询语句
cursor.execute('select * from user')
#获取查询结果


result3 = cursor.fetchall()
print('删除后的查询结果result3:',result3)  #使用fetchall()结果返回列表,列表结果为元组

#关闭游标
cursor.close()
#提交事务
conn.commit()
#关闭Connection连接
conn.close()

?结果为:

?

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-10-23 12:34:35  更:2021-10-23 12:36:42 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 4:12:03-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码