Python连接MySQL可以采用以下几种方法:
1. 使用Python标准库中的mysql.connector模块
mysql.connector模块是Python自带的一个连接MySQL的模块,可以通过pip install mysql-connector-python安装。该模块使用MySQL的官方mysql-connector-c库连接MySQL,支持Python2和Python3。具体步骤如下:
- 安装mysql-connector-python模块
!pip install mysql-connector-python
- 导入mysql.connector模块
import mysql.connector as connector
- 连接MySQL数据库
config = {
'user': 'root',
'password': '123456',
'host': '127.0.0.1',
'database': 'test',
'auth_plugin': 'mysql_native_password'
}
cnx = connector.connect(**config)
- 创建游标
cursor = cnx.cursor()
- 执行SQL查询语句
cursor.execute("SELECT * FROM users")
rows = cursor.fetchall()
for row in rows:
print(row)
- 关闭游标和连接
cursor.close()
cnx.close()
2. 使用Python的ORM框架
ORM(Object-Relational Mapping)是对象关系映射,使得开发者能够将关系型数据库转化为对象,更方便地进行操作。比较流行的ORM框架有SQLAlchemy、Django ORM等,本文以SQLAlchemy作为示例。
- 安装SQLAlchemy模块
!pip install sqlalchemy
- 导入SQLAlchemy模块
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
- 连接MySQL数据库
engine = create_engine('mysql+mysqlconnector://root:123456@127.0.0.1:3306/test')
- 创建Session会话
Session = sessionmaker(bind=engine)
session = Session()
- 执行SQL查询语句
from sqlalchemy import text
rows = session.query(text('SELECT * FROM users')).all()
for row in rows:
print(row)
- 关闭Session会话
session.close()
以上两种方法都可以用于Python连接MySQL数据库,使用ORM框架会比较灵活易用,但是需要学习ORM框架的使用方法,使用Python自带的mysql.connector模块则相对简单。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python连接mysql有哪些方法 - Python技术站