Python|Python连接MySQL数据库方法介绍(超详细!手把手项目案例操作)
文章插图
作者 | CDA数据分析师
来源 | CDA数据分析研究院
本文涉及到的开发环境:
- 操作系统 Windows 10
- 数据库 MySQL 8.0
- Python 3.7.2
- pip 19.0.3
步骤:
- 连接数据库
- 生成游标对象
- 执行SQL语句
- 关闭游标
- 关闭连接
PyMySQL : 是封装了MySQL驱动的Python驱动 , 一个能使Python连接到MySQL的库
环境要求:Python version >= 3.4
PyMySQL安装
安装
Win键+X键再按I键 , 调出Windows PowerShell窗口 , 输入
pip install PyMySQL
回车
运行结果如下则安装成功
文章插图
pip version ===19.0.3
查看版本
查看PyMySQL的版本 , 输入
pip show PyMySQL
回车
文章插图
利用PyMySQL连接数据库
首先我们的MySQL数据库已安装 , 且已建好名为test的数据库 , 其中有名为student的表
文章插图
import pymysql
#连接数据库
conn=pymysql.connect(host = '127.0.0.1' # 连接名称 , 默认127.0.0.1
,user = 'root' # 用户名
,passwd='password'# 密码
,port= 3306 # 端口 , 默认为3306
,db='test' # 数据库名称
,charset='utf8' # 字符编码
)
cur = conn.cursor()# 生成游标对象
sql="select * from `student` "# SQL语句
cur.execute(sql)# 执行SQL语句
data = http://kandian.youth.cn/index/cur.fetchall()# 通过fetchall方法获得数据
for i in data[:2]:# 打印输出前2条数据
print (i)
cur.close()# 关闭游标
conn.close()# 关闭连接
上述代码中 , 实现了通过Python连接MySQL查询所有的数据 , 并输出前2条数据的功能 。 执行结果如下:
('a', '赵大', '16')
('b', '钱二', '16')
mysql.connector
mysql-connector-python:是MySQL官方的纯Python驱动;
mysql.connector安装
安装
pip install mysql
文章插图
查看版本
pip show mysql
文章插图
利用 mysql.connector连接数据库
首先我们的MySQL数据库已安装 , 且已建好名为test的数据库 , 其中有名为student的表
文章插图
import mysql.connector
conn=mysql.connector.connect(host = '127.0.0.1' # 连接名称 , 默认127.0.0.1
,user = 'root' # 用户名
,passwd='password' # 密码
,port= 3306 # 端口 , 默认为3306
,db='test' # 数据库名称
,charset='utf8' # 字符编码
)
cur = conn.cursor()# 生成游标对象
sql="select * from `student` "# SQL语句
cur.execute(sql)# 执行SQL语句
data = http://kandian.youth.cn/index/cur.fetchall()# 通过fetchall方法获得数据
for i in data[:2]:# 打印输出前2条数据
print (i)
cur.close()# 关闭游标
conn.close()# 关闭连接
上述代码中 , 实现了通过Python连接MySQL查询所有的数据 , 并输出前2条数据的功能 。 执行结果如下:
('a', '赵大', '16')
('b', '钱二', '16')
Python对MySql数据库实现增删改查
接下来我们以用pymysql包为例 , 介绍一下如何用Python对数据库中的数据进行增删改查。
增
import pymysql
#连接数据库
conn=pymysql.connect(host = '127.0.0.1' # 连接名称 , 默认127.0.0.1
,user = 'root' # 用户名
,passwd='password'# 密码
,port= 3306 # 端口 , 默认为3306
,db='test' # 数据库名称
,charset='utf8' # 字符编码
)
cur = conn.cursor()# 生成游标对象
#=============插入语句===============================
sql= "INSERT INTO student VALUES ('p','魏六','17')"
#===================================================
try:
cur.execute(sql1) # 执行插入的sql语句
conn.commit() # 提交到数据库执行
except:
coon.rollback()# 如果发生错误则回滚
conn.close() # 关闭数据库连接
然后我们再运行查询语句
import mysql.connector
conn=mysql.connector.connect(host = '127.0.0.1' # 连接名称 , 默认127.0.0.1
,user = 'root' # 用户名
,passwd='password' # 密码
,port= 3306 # 端口 , 默认为3306
,db='test' # 数据库名称
,charset='utf8' # 字符编码
)
cur = conn.cursor()# 生成游标对象
- 部长|工信部副部长:中国移动物联网连接数超10.8亿
- UWB|不得不知的汽车连接技术
- 纽带|高瓴资本:全面布局智能制造,做连接新经济与传统行业的纽带
- 告诉|阿里大佬告诉你如何一分钟利用Python在家告别会员看电影
- Python源码阅读-基础1
- Python调用时使用*和**
- 如何基于Python实现自动化控制鼠标和键盘操作
- 解决多版本的python冲突问题
- 学习python第二弹
- 连接未来的互联网,遗忘了“过去”?未来我们也同样会被遗忘