程序员文章、书籍推荐和程序员创业信息与资源分享平台

网站首页 > 技术文章 正文

3分钟教会你用Python读取MySQL中的数据

hfteth 2025-01-06 21:47:56 技术文章 9 ℃

我们知道用Python分析数据很方便,那么Python如何读取MySQL中的数据呢?

其实很简单,只需三步。

1、Python连接MySQL

2、Python执行sql语句

3、将查询到的数据转换为DataFrame

在数据分析中,我们一般用pymysql这个库来连接MySQL。

使用前需要安装pymysql,通过pip命令直接安装即可。

1、Python连接MySQL

安装好pymysql之后,确保MySQL处于正常运行状态,导入pymysql并创建连接,代码如下。

import pymysql

conn = pymysql.connect(
    host = "127.0.0.1",
    user = "root",
    passwd = "100200",
    db = "mydb",
    charset = "utf8"
)

这里调用了pymysql中的connect方法,其中参数解释如下。

  • host:MySQL的ip地址,本地的用127.0.0.1,用localhost也行。
  • user:MySQL用户名,这里用root账户。
  • passwd:MySQL密码,安装MySQL时自己设置的密码。
  • db:连接哪个数据库,这里连接mydb数据库。
  • charset:设置编码格式为utf8,防止中文乱码。

2、Python执行sql语句

连接到MySQL后,创建一个游标,用来执行sql语句,代码如下。

cursor = conn.cursor()
sql = "select * from emp_tb;"
cursor.execute(sql)
conn.commit()

其中创建了一个游标cursor,sql语句为查询emp_tb表中的所有记录,利用cursor执行sql语句,最后提交。

调用fetchall方法从游标cursor中取出所有数据,查看前5条,代码如下。

data = cursor.fetchall()
data[:5]

运行结果:

可以看到,得到的数据是一个元组,里面的每个元素也是一个元组。

3、将数据转换为DataFrame

由于我们在Python数据分析中用数据框(DataFrame)比较方便,所以通过以下代码将这个元组转换为数据框。

from pandas import DataFrame

df = DataFrame(data, columns=['dep_name', 'id', 'name', 'hiredate', 'salary'])
df.head()

运行结果:

最后,提取完数据,别忘了关闭连接哦,否则可能导致资源浪费。

conn.close()

到此,我们用Python从MySQL中提取到数据,并转换为了数据框,接着就可以愉快地进行后续的分析了。

Tags:

最近发表
标签列表