用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()
相关推荐
Elastic 中国社区官方博客5 小时前
搜索倍增器:推动收入、生产力和 AI 实现规模化
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
青 春 记 忆5 小时前
Dify Docker Compose 通用无损升级指南:从备份、双版本预演到切换与回滚
运维·人工智能·python·docker·容器
GlueNa2SiO35 小时前
03-Flask模板引擎Jinja2详解
笔记·python·flask
东风破_6 小时前
从输入 juejin.cn 到看到页面:DNS、Nginx、服务器集群与 CDN 到底在做什么?
后端·mysql
小成很成6 小时前
mysql 8.0.21 升级 mysql 8.0.45(经过生产环境验证)
android·mysql·adb
东风破_6 小时前
从 0 设计一个博客数据库:用户、头像与文章表应该怎么建?
后端·mysql
保定公民7 小时前
达梦数据库存储过程中的数组类型详解:基础数组与记录数组的差异化应用
数据库·达梦·存储过程·达梦数据库·dm8·dm
梦Arrebol7 小时前
Redis 内容及相关实验
数据库·redis
临沂GEO8 小时前
GEO搜索优化科普|正规地理位置流量运营入门指南
大数据·人工智能·python·流量运营
大模型码小白8 小时前
Spring AI Tool 实现自然语言操作 MySQL 数据库详解
服务器·开发语言·数据库·人工智能·python·mysql·spring