Python3使用pymysql连接MySQL数据库完整教程
本文详细介绍在Mac系统下使用Python3的pymysql库连接MySQL数据库的完整流程。涵盖从环境配置、Navicat建表到Jupyter Notebook中执行SQL查询及数据插入的实操步骤,提供关键代码片段与参数说明,帮助开发者快速掌握Python操作数据库的核心方法。
本示例的运行环境基于macOS系统,本地已部署MySQL服务端并搭配Navicat Premium客户端进行管理,Python运行环境为已安装pymysql库的Anaconda3。
首先,梳理与数据库建立连接(connection)及执行操作的基本原理。

(1)利用Navicat Premium工具创建名为testdataset的数据库,并在该库中建立数据表test:
CREATE TABLE `test` ( `id` int(10) NOT NULL AUTO_INCREMENT, `name` varchar(20) DEFAULT NULL, `age` int(10) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

(2)在test数据表中录入具体的数据项。

(3)在Jupyter Notebook环境中连接数据库,并执行相关数据库操作。
import pandas as pd
import datetime
import pymysql
#创建连接
conn = pymysql.connect(host='127.0.0.1', port=3306, user='root',
passwd='******', db='testdataset', charset='utf8')#passwd是本地mysql服务器密码
conn
#Output:<pymysql.connections.Connection at 0x11443e588>
#创建游标
cursor = conn.cursor()
cursor
#Output:<pymysql.cursors.Cursor at 0x11443e2e8>
#执行SQL,并返回受影响行数
effect_row = cursor.execute("select * from test")
effect_row
#Output:4
#获取剩余结果的第一行数据
r1=cursor.fetchone()
r1
#Output:(1, '李明', 18)
name='王天'
age=17
sql="select name,age from test where name='%s' and age='%s'" % (name,age)
row_count=cursor.execute(sql)
row_1 = cursor.fetchone()
print(row_count,row_1)
#Output:1 ('王天', 17)
conn.commit()
cursor.close()
conn.close()
总结
以上介绍了Python3数据库操作包pymysql的具体使用方法,希望能对读者有所帮助。如有任何疑问,欢迎留言,小编将及时回复。感谢大家对本站的支持!
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













