SQLAlchemy应用了ORM技术(Object-Relational Mapping),它能把关系数据库的表结构映射到对象上。
SQLAlchemy不是内置模块,需要我们进行安装
pip install sqlalchemy
在创建数据库连接的时候,可以使用dburi格式
mysql+pymysql://<username>:<password>@<host>:<port>/<dbname>?<option>
前面的mysql+pymysql表示我们连接的是mysql数据库,并且使用pymysql作为driver
from sqlalchemy import Column, Integer, String, create_engine
from sqlalchemy.orm import sessionmaker
from sqlalchemy.ext.declarative import declarative_base
#创建对象的基类
Base = declarative_base()
#定义User对象
class User(Base):
#数据库中表的名字
__tablename__ = 'users'
#数据库中表结构对应的字段
id = Column(Integer(), primary_key=True)
name = Column(String(20))
age = Column(Integer())
#初始化数据库连接
engine = create_engine('mysql+pymysql://test:test@localhost:3306/test?charset=utf8')
#创建DBSession类型
DBSession = sessionmaker(bind=engine)
session = DBSession()
xiaoming = User(id=19, name='小明', age=18)
#添加到session
session.add(xiaoming)
#提交到数据库
session.commit()
#关闭session
session.close()