📜  如何在 jupyter notebook 中连接 mysql 数据库 - SQL (1)

📅  最后修改于: 2023-12-03 15:08:40.734000             🧑  作者: Mango

如何在 Jupyter Notebook 中连接 MySQL 数据库 - SQL

Jupyter Notebook 是一款常用的数据分析工具,常常需要连接数据库来完成数据分析工作。本文将介绍如何在 Jupyter Notebook 中连接 MySQL 数据库。

安装必需的 Python 库

首先需要安装必需的 Python 库,包括:

  • mysql-connector-python: MySQL 的 Python 驱动程序
  • pandas:用于数据处理的 Python 库

安装命令如下:

!pip install mysql-connector-python pandas
连接 MySQL 数据库

接下来需要创建一个 MySQL 数据库,并在 Jupyter Notebook 中连接到该数据库。我们以 localhost 上的 MySQL 服务器举例,设置数据库名称为 test。

import mysql.connector
from mysql.connector import Error

try:
    connection = mysql.connector.connect(
        host='localhost',
        database='test',
        user='username',
        password='password'
    )

    if connection.is_connected():
        db_Info = connection.get_server_info()
        print("成功连接到 MySQL 数据库版本:", db_Info)
        
        # 其他 MySQL 操作可以在这里完成

except Error as e:
    print("连接 MySQL 数据库时发生错误,原因为:", e)
    
finally:
    if connection.is_connected():
        connection.close()
        print("已关闭 MySQL 数据库连接。")

在连接 MySQL 数据库之后,可以执行任意 MySQL 命令,比如查询 test 数据库中的所有表格:

import pandas as pd

def sql_to_dataframe(query):
    try:
        # 连接 MySQL 数据库
        connection = mysql.connector.connect(
            host='localhost',
            database='test',
            user='username',
            password='password'
        )

        if connection.is_connected():
            # 获取查询结果
            result_data = pd.read_sql(query, connection)
        
    except Error as e:
        print("连接 MySQL 数据库时发生错误,原因为:", e)
    
    finally:
        if connection.is_connected():
            connection.close()
            print("已关闭 MySQL 数据库连接。")
        
        return result_data

query = "show tables"
df = sql_to_dataframe(query)
print(df)

以上例子中,我们使用了 pandas 库将查询结果转换为 data frame 类型的对象,方便后续的数据处理。如果想要查询其他内容,只需要修改 query 的值。