官方文档:http://docs.sqlalchemy.org/en/latest/
SQLAlchemy基础理解python中的类 == 数据库中的表
python中的类的属性 == 表中的字段
python中类的实例 == 表中的行
其他python中的ORM框架:
1. 连接数据库from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
engine = create_engine("mysql://user:password@hostname/dbname?charset=uft8",
echo=True)
session = sessionmaker(bind=engine)()
create_engine的可选参数很多, 有几个比较常用的。
echo: True的时候,会打印所有的状态变化, 包括转换的SQL语句。 一般在生产环境中呢,我们是把它设置为Flase的。
max_overflow : 允许连接到数据库的最大连接数.
注意,不同的数据库,不同的数据库驱动,对应不同的连接字符串。
http://docs.sqlalchemy.org/en/latest/core/engines.html
2. 模型定义# coding=utf-8
from __future__ import unicode_literals, absolute_import
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import Column, Integer, String, DateTime
Base = declarative_base() #
class User(Base ):
__tablename__ = "auth_user"
id = Column(Integer, primary_key=True)
date_joined = Column(DateTime)
username = Column(String(length=30))
password = Column(String(length=128))
类等同于数据库的一张表
Column 显然就是这张表的一列
3. 增、删、改、查