用python操作mysql之pymysql库基本操作

首先我们需要先了解基本的sql语句

启动登录mysql

sql 复制代码
mysql-u root-p 3306 -p

数据库备份与恢复

备份:

备份不要进到mysql里面直接在终端执行

sql 复制代码
mysqldump -u root -p databases > /备份路径/备份文件名

databases表示需要备份的数据库,>后面跟备份存储的路径以及文件名

恢复:

恢复需要先进到mysql里面

sql 复制代码
create database nb2;#先创建数据库
use nb2; #使用数据库
source D:\\bak.sql; #开始恢复

pymysql的安装

直接在python终端执行

python 复制代码
pip install pymysql

pymysql基本操作

1、连接数据库

python 复制代码
import pymysql
#连接数据库
conn=pymysql.connect(
    host='localhost',
    user='root',
    passwd='xhy050813',
    database='db1',
    port=3306,
)
#创建数据库的游标对象
cursor = conn.cursor()

2、执行查询语句

python 复制代码
#执行sql语句
sql = 'select * from student_1'
cursor.execute(sql) #执行查询语句
data_one = cursor.fetchone()    #获取第一条数据
print(data_one)
data_all = cursor.fetchall()    #获取全部数据
print(data_all)

3、执行插入语句

python 复制代码
#执行sql语句
sql = "insert into student_1 (id,name,age,dept,sex) values (%s,%s,%s,%s,%s);"   #插入数据(这里如果不是固定的数据插入就只能用%s)
datas = [(7,'xxx',19,'xxx','男'),(8,'杨柳',23,'统计','女'),(9,'凯老师',20,'大数据','男')]
for data in datas:
    cursor.execute(sql,data)    #使用游标对象执行sql语句,要传入占位符的数据
    conn.commit()   #执行'增删改'时一定要提交否则数据不会改变(用连接对象提交,游标对象执行)

4、执行修改语句

python 复制代码
#执行sql语句
sql = 'update student_1 set name=%s where id=%s;'
cursor.execute(sql,('xhy',7))
conn.commit()

5、执行删除语句

python 复制代码
#执行sql语句
sql = 'delete from student_1 where id=%s;'
cursor.execute(sql,(7))
conn.commit()

6、关闭连接

python 复制代码
#关闭游标
cursor.close()
#关闭连接
conn.close()
相关推荐
lusklusklusk7 分钟前
Oracle索引组织表,SQLServer聚集索引,Mysql Innodb表的数据行不是在磁盘上像排队一样严格连续地存放
mysql·postgresql·oracle·sqlserver
让学习成为一种生活方式9 分钟前
PMGD:植物线粒体基因组数据库--Journal of Integrative Plant Biology
数据库
达梦数据37 分钟前
达梦数据复制软件DMDRS搭建部署示例:源数据库DM8到目标数据库DM8一对一数据同步
数据库
VXbishe1 小时前
【课程设计】基于SpringBoot的乡村政务服务系统的设计与实现-计算机毕设77011
javascript·vue.js·spring boot·python·php·课程设计·政务
名字还没想好☜1 小时前
Python sqlite3 实战:事务提交、参数化防注入、WAL 并发与 row_factory 取字典
后端·python·编程语言
IT_Octopus1 小时前
从一个应用开发者的角度,搞懂大数据查询的完整链路
java·大数据·数据库
Htr_1 小时前
Creem 2.0 使用指南:面向 AI 构建时代的资金平台
android·数据库·人工智能·ui·photoshop
我是大猴子1 小时前
reids的数据结构的应用场景
数据库
论文复现现场1 小时前
ComfyUI 怎么同时调用 4 张/8 张 RTX 4090?AI 视频批量生成的多实例队列与 Python 调度方案
人工智能·python·comfyui·rtx4090
泡海椒1 小时前
评分系统最佳实践:JQuick-Java实现权重、阈值动态配置评分
java·人工智能·python