已解决
第十三章 Python操作数据库
来自网友在路上 168868提问 提问时间:2023-11-08 09:27:33阅读次数: 68
最佳答案 问答题库688位专家为你答疑解惑
系列文章目录
第一章 Python 基础知识
第二章 python 字符串处理
第三章 python 数据类型
第四章 python 运算符与流程控制
第五章 python 文件操作
第六章 python 函数
第七章 python 常用内建函数
第八章 python 类(面向对象编程)
第九章 python 异常处理
第十章 python 自定义模块及导入方法
第十一章 python 常用标准库
第十二章 python 正则表达式
第十三章 python 操作数据库
文章目录
- 系列文章目录
- pymysql模块准备与基本使用
- pymysql模块
- 基本使用
- connect()函数常用参数
- 连接对象常用方法
- 游标对象常用方法
- 数据库增删改查
- 案例:查询数据库并格式化输出
- 总结
pymysql模块准备与基本使用
pymysql模块
pymysql是python中操作MySQL的模块,其使用方法和MySQLdb几乎相同,但目前pymysql支持python3.x而后者不支持3.x版本
pymysql是第三方模块,需要单独安装,首选通过pip安装PyMySQL
pip3 install pymysql
基本使用
先创建库以及表
# 创建库
create database test;
创建表
use test;
create table user(id int primary key not null auto_increment,username varchar(50) not null,password varchar(50) not null);
查看表
show tables;
查看表类型
describe user;
from unittest import result
import pymysql
conn = pymysql.connect(host='127.0.0.1',port=3306,user='root',password='123.com',db='test',charset='utf8',cursorclass=pymysql.cursors.DictCursor)
# 创建游标
cursor = conn.cursor()
# 向user表插入数据id是自增不需要插入
sql = "insert into user(username,password) values('root','123.com')"
cursor.execute(sql)
# 向数据库提交,进行写入
conn.commit()
sql = "select * from user"
cursor.execute(sql)
result = cursor.fetchone()
print(result)
connect()函数常用参数
连接对象常用方法
游标对象常用方法
from unittest import result
import pymysql
conn = pymysql.connect(host='127.0.0.1',port=3306,user='root',password='123.com',db='test',charset='utf8',cursorclass=pymysql.cursors.DictCursor)
try:with conn.cursor() as cursor:# 创建一条记录sql = "insert into user(username,password) values('wang','123.com')"cursor.execute(sql)# 写入到数据库conn.commit()with conn.cursor() as cursor:# 读取一条记录sql = "select id,username,password from user"cursor.execute(sql)result = cursor.fetchall()print(result)
finally: # 不管try有没有执行,都执行这个进行关闭数据库conn.close()
数据库增删改查
from sqlite3 import Cursor
from unittest import result
import pymysql
conn = pymysql.connect(host='127.0.0.1',port=3306,user='root',password='123.com',db='test',charset='utf8',cursorclass=pymysql.cursors.DictCursor)
cursor = conn.cursor()
# 增
sql = "insert into user(username,password) values(%s,%s)"
args = [('张三','123.com'),('李四','123.com'),('王五','123.com')]
cursor.executemany(sql,args)
conn.commit()
# 删
sql = "delete from user where id='7'"
cursor.execute(sql)
conn.commit()
# 改
sql = "update user set password='66666' where id='6'"
cursor.execute(sql)
conn.commit()
# 查
sql = "select * from user"
cursor.execute(sql)
print('获取第一条记录:',cursor.fetchone())
print('获取指定多少条记录:',cursor.fetchmany(3))
print('获取所有记录:',cursor.fetchall())
案例:查询数据库并格式化输出
import pymysql
conn = pymysql.connect(host='127.0.0.1',port=3306,user='root',password='123.com',db='test',charset='utf8',cursorclass=pymysql.cursors.DictCursor)
try:with conn.cursor() as cursor:# 读取一条记录sql = "select * from user"cursor.execute(sql)result = cursor.fetchall()for d in result:print(f"ID:{d['id']},用户名:{d['username']},密码:{d['password']}")
finally: # 不管try有没有执行,都执行这个进行关闭数据库conn.close()
总结
以上就是今天要讲的内容,本文仅仅简单学习了python操作数据库,针对数据库做增删改查。
查看全文
99%的人还看了
相似问题
- MySQL数据库:开源且强大的关系型数据库管理系统
- 【腾讯云云上实验室-向量数据库】探索腾讯云向量数据库:全方位管理与高效利用多维向量数据的引领者
- 【史上最细教程】服务器MySQL数据库完成主从复制
- 字符串结尾空格比较相关参数BLANK_PAD_MODE(DM8:达梦数据库)
- 缓存雪崩、击穿、穿透及解决方案_保证缓存和数据库一致性
- Redis 与其他数据库的不同之处 | Navicat
- 多协议数据库管理软件 Navicat Premium 16 mac中文版功能
- (数据库管理系统)DBMS与(数据库系统)DBS的区别
- duplicate复制数据库单个数据文件复制失败报错rman-03009 ora-03113
- 数据库课后习题加真题
猜你感兴趣
版权申明
本文"第十三章 Python操作数据库":http://eshow365.cn/6-35222-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!