python--基础学习(六)sqlite数据库基本操作
python系列均基于python3.4环境
1、新建数据表
- 新建表,命名为student(id, name, score, sex, age),id为关键字,代码如下:
import sqlite3 # test.db is a file in the working directory
conn = sqlite3.connect("test.db")
c = conn.cursor() # create tables
sql = '''create table student (id int primary key, name varchar(20), score int, sex varchar(10), age int)'''
c.execute(sql) # save the changes
conn.commit() # close the connection with the database
conn.close()
(1)如果数据库test.db不存在的话,会自动创建数据库test.db
(2)如果sql语句比较长的话,需要换行,又要保持格式的话,可以使用三引号(python--基础学习(三)字符串单引号、双引号、三引号)
2、插入数据
- 代码示例
import sqlite3
conn = sqlite3.connect("test.db")
c = conn.cursor()
students = [(2, 'mark', 80, 'male', 18),
(3, 'tom', 78, 'male', 17),
(4, 'lucy', 98, 'female', 18),
(5, 'jimi', 60, 'male', 16)]
# 第一种:execute "INSERT"
c.execute("insert into student(id, name, score, sex, age) values (1,'jack',80,'male',18)")
# 第二种:execute multiple commands
c.executemany('insert into student values (?,?,?,?,?)', students)
# 第三种:using the placeholder
c.execute("insert into student values (?,?,?,?,?)", (6, 'kim', 69, 'male', 16))
conn.commit()
conn.close()
3、查询
- 代码示例
import sqlite3
conn = sqlite3.connect('test.db')
c = conn.cursor()
# 第一种:retrieve one record
c.execute('select * from student order by score desc')
print(c.fetchone()) #第1条记录
print(c.fetchone()) #第2条记录
# 第二种:retrieve all records as a list
c.execute('select * from student order by score desc')
print(c.fetchall())
# 第三种:terate through the records
rs = c.execute('select * from student order by score desc')
for row in rs:
print(row)
conn.commit()
conn.close()
- 运行结果:
#第一种
(4, 'lucy', 98, 'female', 18)
(1, 'jack', 80, 'male', 18) #第二种
[(4, 'lucy', 98, 'female', 18), (1, 'jack', 80, 'male', 18), (2, 'mark', 80, 'male', 18), (3, 'tom', 78, 'male', 17), (6, 'kim', 69, 'male', 16), (5, 'jimi', 60, 'male', 16)] #第三种
(4, 'lucy', 98, 'female', 18)
(1, 'jack', 80, 'male', 18)
(2, 'mark', 80, 'male', 18)
(3, 'tom', 78, 'male', 17)
(6, 'kim', 69, 'male', 16)
(5, 'jimi', 60, 'male', 16)
4、修改
- 代码示例
import sqlite3
conn = sqlite3.connect("test.db")
c = conn.cursor()
sql = "update student set name='jerry' where id = 2"
c.execute(sql)
conn.commit()
conn.close()
5、删除
- 删除数据,代码示例
conn = sqlite3.connect("test.db")
c = conn.cursor()
c.execute('delete from student where id=2')
conn.commit()
conn.close()
- 删除数据表
c.execute('drop table tableName')
(@_@)Y 学习总结到此结束,待续!
python--基础学习(六)sqlite数据库基本操作的更多相关文章
- python基础知识六 文件的基本操作+菜中菜
基础知识六 文件操作 open():打开 file:文件的位置(路径) mode:操作文件模式 encoding:文件编码方式 f :文件句柄 f = open("1.t ...
- Python基础学习六 操作MySQL
python操作数据库,需要先安装模块 1.下载MySQL.Redis模块 2.解压后,在当前目录执行 python setup.py install 3.或是pycharm直接选择安装 import ...
- 【Python基础学习六】函数
1.创建函数 Python中函数的关键字def来定义. def fibs(num): f=[0,1] for i in range(1,num): f.append(f[-1]+f[-2]) retu ...
- python基础学习Day8 文件的基本操作
1.文件的基本操作初识 f = open('a.text', 'r', encoding='utf-8')data = f.read()print(data)f.close() 2.读 r r+b ...
- Python基础学习六 操作Redis
import redis r = redis.Redis(host=',db=1) #set get delete setex 都是针对string类型的 k-v # r.set('louis_ses ...
- IOS开发-UI学习-sqlite数据库的操作
IOS开发-UI学习-sqlite数据库的操作 sqlite是一个轻量级的数据库,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了,而且它的处理速度比Mysql.PostgreSQL这 ...
- Day1 Python基础学习
一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编写程序,本质仍然是直接操作 ...
- Day1 Python基础学习——概述、基本数据类型、流程控制
一.Python基础学习 一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编 ...
- Python 基础学习 总结篇
Python 基础学习总结 先附上所有的章节: Python学习(一)安装.环境配置及IDE推荐 Python学习(二)Python 简介 Python学习(三)流程控制 Python学习(四)数据结 ...
- Python基础学习五
Python基础学习五 迭代 for x in 变量: 其中变量可以是字符串.列表.字典.集合. 当迭代字典时,通过字典的内置函数value()可以迭代出值:通过字典的内置函数items()可以迭代出 ...
随机推荐
- SSM+DUBBO/ZK异常
1.Could not find resource(mybatis本身不支持通配符,是spring提供的ant匹配法) 2.ClassNotFoundException: org.I0Itec.zkc ...
- 运维自动化工具---Puppet
案例环境:-----------------------------------------------------------------主机 操作系统 IP地址 主要软件--------- ...
- sgdisk常用操作
与fdisk创建MBR分区一样,sgdisk是一个创建GPT分区的工具,如果你还不了解GPT分区,请参考The difference between booting MBR and GPT with ...
- python学习笔记:Day02
一.列表(list) 1.定义一个列表 name=["tom","jerry","12","13","lose ...
- Python文件读取编码错误问题解决之(PyCharm开发工具默认设置的坑。。。)
刚接触Python学习,正准备做个爬虫的例子,谁知道代码一开始就遇到了一个大坑,狂汗啊. 问题是这样的:我通过代码爬取了博客园首页的HTML代码并存入到blog.txt文件当中,然后准备读取出来之后进 ...
- 每周一书-《Bootstrap基础教程》
首先说明,本周活动有效时间为8月15日到21日.本周为大家送出的书是有电子工业出版,贺臣/陈鹏编著的<Bootsrap基础教程>,为前端入门必读书籍. 下面是从书中摘录的内容. “ Boo ...
- 架构设计:前后端分离之Web前端架构设计
在前面的文章里我谈到了前后端分离的一些看法,这个看法是从宏观的角度来思考的,没有具体的落地实现,今天我将延续上篇文章的主题,从纯前端的架构设计角度谈谈前后端分离的一种具体实现方案,该方案和我原来设想有 ...
- DOM+CSS3实现小游戏SwingCopters
前些日子看到了一则新闻,flappybird原作者将携新游戏SwingCopters来袭,准备再靠这款姊妹篇游戏引爆大众眼球.就是下面这个小游戏: 前者的传奇故事大家都有耳闻,至于这第二个游戏能否更加 ...
- resumablejs 分块上传 断点续传
http://www.resumablejs.com/ 官网 upload.html <!DOCTYPE html> <html lang="en"> &l ...
- C#Light(包括unity一切C#环境可用嵌入式脚本)0.10B稳定版发布,功能已定型
yo,如题,这个呕心沥血的脚本语言终于完成了. 后面我会: 1.逐渐做一些例子.说明 2.逐渐测试我能获取到的dotnet环境,保证在所有的平台都能正常执行 3.积极推广 0.10B版本较之前的区别主 ...