MySQL Python 3 与 SQLAlchemy的使用方法

MySQL Python 3 与 SQLAlchemy的使用方法

在本文中,我们将介绍如何使用Python 3和SQLAlchemy来连接MySQL数据库。MySQL是最受欢迎的关系型数据库之一,Python则是最流行的程序设计语言之一,而SQLAlchemy则是Python中最流行的ORM(Object-Relational Mapping)框架之一。

阅读更多:MySQL 教程

MySQL Python 3的连接方法

Python 3中许多操作MySQL的模块都被称为DBAPI。其中最受欢迎的是MySQL Connector/Python。安装MySQL Connector/Python非常简单,只需要在命令行中输入以下命令:

pip install mysql-connector-python
Mysql

安装完成后,即可通过以下代码连接MySQL数据库:

import mysql.connector

cnx = mysql.connector.connect(user='user', password='password',
                              host='localhost',
                              database='database_name')

cnx.close()
Mysql

注意,需要提供用户名、密码、主机名和数据库名。连接成功后,将返回一个connection对象。执行完成后需要关闭连接。

SQLAlchemy的使用方法

SQLAlchemy带有一些用于ORM的模块,它允许您使用Python对象来表示数据库中的表。安装 SQLAlchemy与MySQL Connector/Python类似:

pip install sqlalchemy
Mysql

在这里,我们将使用SQLAlchemy来创建一个名为Person的表,每个人的名字和年龄将被存储:

from sqlalchemy import create_engine, Column, Integer, String
from sqlalchemy.ext.declarative import declarative_base

Base = declarative_base()

class Person(Base):
    __tablename__ = 'people'

    id = Column(Integer, primary_key=True)
    name = Column(String)
    age = Column(Integer)

engine = create_engine('mysql+mysqlconnector://user:password@localhost:3306/database_name')
Base.metadata.create_all(engine)
Mysql

在这里,我们使用SQLAlchemy的create_engine方法来连接MySQL数据库,并使用声明式基础类(declarative base class)来定义我们的表结构。

我们定义了一个名为Person的类,它继承了SQLAlchemy的Base类。我们还定义了一个名为id的列,它是一个整数,是主键,并且定义了一个名为name的列和一个名为age的列。

SQLAlchemy的查询方法

连接MySQL数据库后,我们可以浏览表数据。以下是使用SQLAlchemy进行查询所需的步骤:

from sqlalchemy.orm import sessionmaker

Session = sessionmaker(bind=engine)
session = Session()

# SELECT * FROM people
people = session.query(Person).all()

for person in people:
    print(person.name, person.age)
Mysql

在此示例中,我们使用sessionmaker功能来创建一个Session类,这个类绑定到我们的MySQL实例。最后,我们可以使用session的query()方法来检索所有数据。

请注意,session.query()方法返回的是一个ORM查询对象,因此请记住将其转换为列表(.all()或.one())或将其迭代。在这里,我们对返回的列表进行了迭代,并使用两个print语句输出每个人的姓名和年龄。

总结

MySQL是最流行的关系型数据库之一,而Python 3是用于数据分析和科学计算的最流行的编程语言之一。在这篇文章中,我们介绍了如何使用Python 3和SQLAlchemy来连接MySQL数据库,并展示了如何使用ORM查询数据。我们还创建了一个名为Person的表,并使用其将人名和年龄存储在其中。希望这篇文章对你有帮助。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册