python sqlalchemy编程基础

‘’’
概念(大家听不懂很正常):

    SQLalchemy是Python的一个框架,是Python用来操作数据库的一种框架,给开发者操作SQL提供的强大功能和灵活性

    ORM: Object Relational Mapper --> 关系对象映射, Django里会详细讲。

    declarative_base类维持了一个从类到表的关系,通常一个应用使用一个base实例,所有实体类都应该继承此类对象

    数据库的链接格式:'数据库类型+数据库驱动名称://用户名:口令@机器地址:端口号/数据库名?charset=utf8'

    代码的运行的前提: 必须提前进入mysql + 必须提前创建好数据库(数据表用代码生成,可以不用创建数据表)

    Column:列的意思

‘’’

from sqlalchemy import create_engine
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import Column, String, Integer, Enum, ForeignKey, Date, DateTime

创建对象的基类

Base = declarative_base()

链接数据库

engine = create_engine(
“mysql+pymysql://mysql:qwe123@localhost/Python_12?charset=utf8”, echo=True, pool_size=5, max_overflow=5
)

部门表

class Depart(Base):
tablename = “depart”

id = Column(Integer, primary_key=True, autoincrement=True, doc='编号')
name = Column(String(20), unique=True, doc='名称')

def __init__(self, id, name):
    self.id = id
    self.name = name

员工表

class User(Base):
tablename = ‘user’

id = Column(Integer, primary_key=True, autoincrement=True, doc='编号')
name = Column(String(20), doc='名称')
age = Column(Integer, doc='年龄')
gender = Column(Enum('男', '女'), default='男', doc='性别')
phone = Column(String(11), doc='电话')

depart_id = Column(Integer, ForeignKey('depart.id'), doc='绑定部门id')

def __init__(self, id, name, age, gender, phone, depart_id):
    self.id = id
    self.name = name
    self.age = age
    self.gender = gender
    self.phone = phone
    self. depart_id = depart_id

if name == ‘main’:
Base.metadata.create_all(engine)

你可能感兴趣的:(sqlalchemy编程,python,mysql,python)