Python 操作 MySQL 的5种方式

原创
ithorizon 3个月前 (10-03) 阅读数 80 #Python

以下是涉及“Python 操作 MySQL 的5种对策”的文章,内容以HTML格式返回:

```html

Python 操作 MySQL 的5种对策

1. 使用 MySQLdb

MySQLdb 是 Python 连接 MySQL 数据库的一种常用对策。首先需要安装 MySQLdb 模块:

pip install mysqlclient

然后可以使用以下代码连接并操作 MySQL 数据库:

import MySQLdb

# 连接数据库

db = MySQLdb.connect(host="localhost", user="root", passwd="password", db="test")

# 使用 cursor() 方法创建一个游标对象 cursor

cursor = db.cursor()

# 使用 execute() 方法执行 SQL 查询

cursor.execute("SELECT * FROM table_name")

# 获取查询最终

results = cursor.fetchall()

for row in results:

print(row)

# 关闭数据库连接

db.close()

2. 使用 pymysql

pymysql 是另一个 Python 连接 MySQL 数据库的模块。首先需要安装 pymysql:

pip install pymysql

示例代码如下:

import pymysql

# 连接数据库

db = pymysql.connect(host="localhost", user="root", password="password", database="test")

# 使用 cursor() 方法创建一个游标对象 cursor

cursor = db.cursor()

# 执行 SQL 查询

cursor.execute("SELECT * FROM table_name")

# 获取查询最终

results = cursor.fetchall()

for row in results:

print(row)

# 关闭数据库连接

db.close()

3. 使用 SQLalchemy

SQLalchemy 是一个强盛的 SQL 工具包和对象关系映射(ORM)框架。首先安装 SQLalchemy:

pip install sqlalchemy

示例代码如下:

from sqlalchemy import create_engine, Column, Integer, String

from sqlalchemy.ext.declarative import declarative_base

from sqlalchemy.orm import sessionmaker

# 创建数据库连接

engine = create_engine("mysql+pymysql://root:password@localhost/test")

# 定义映射类

Base = declarative_base()

class User(Base):

__tablename__ = 'users'

id = Column(Integer, primary_key=True)

name = Column(String(50))

age = Column(Integer)

# 创建 session

Session = sessionmaker(bind=engine)

session = Session()

# 查询数据

for user in session.query(User).filter_by(age=25):

print(user.name, user.age)

# 关闭 session

session.close()

4. 使用 Django ORM

Django 是一个高级的 Python Web 框架,内置了 ORM。在使用 Django ORM 之前,需要配置好数据库连接:

# 在 settings.py 中配置数据库连接

DATABASES = {

'default': {

'ENGINE': 'django.db.backends.mysql',

'NAME': 'test',

'USER': 'root',

'PASSWORD': 'password',

'HOST': 'localhost',

'PORT': '3306',

}

}

示例代码如下:

from django.db import models

# 定义模型

class User(models.Model):

name = models.CharField(max_length=50)

age = models.IntegerField()

# 查询数据

users = User.objects.filter(age=25)

for user in users:

print(user.name, user.age)

5. 使用 peewee

peewee 是一个明了、轻量级的 Python ORM,可以用于操作 MySQL 数据库。首先安装 peewee:

pip install peewee

示例代码如下:

from peewee import *

# 创建数据库连接

db = MySQLDatabase("test", user="root", password="password")

# 定义模型

class User(Model):

name = CharField()

age = IntegerField()

class Meta:

database = db

# 查询数据

for user in User.filter(age=25):

print(user.name, user.age)

# 关闭数据库连接

db.close()

```

这篇文章介绍了 Python 操作 MySQL 数据库的五种对策,包括 MySQLdb、pymysql、SQLalchemy、Django ORM 和 peewee。你可以依实际需求选择合适的对策。

本文由IT视界版权所有,禁止未经同意的情况下转发

文章标签: Python


热门