SqlAlchemy使用详解

python之sqlalchemy建立表的实例详解python

经过sqlalchemy建立表须要三要素:引擎,基类,元素mysql

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

 

引擎:也就是实体数据库链接sql

engine = create_engine('mysql+pymysql://godme:godme@localhost/godme',encoding='utf-8',echo=True)

 

传入参数:数据库类型+链接库+用户名+密码+主机,字符编码,是否打印建表细节数据库

基类:ui

Base = declarative_base()编码

元素:spa

class User(Base): 
  __tablename__ = 'user' 
  id = Column(Integer,primary_key=True)  
  name = Column(String(32)) 
  password = Column(String(64))

 

经过基本元素:code

__tablename__:指定表名
Column:行声明,可指定主键
Integer:数据类型
String:数据类型,可指定长度

 

如何指定使用 InnoDB,以及使用 UTF-8 编码?
最简单的方式就是修改数据库的默认配置。若是非要在代码里指定的话,能够这样:blog

class User(BaseModel):
    __table_args__ = {
        'mysql_engine': 'InnoDB',
        'mysql_charset': 'utf8'
    }

 

建立:sqlalchemy

Base.metadata.create_all(engine)

 

基本过程:

1. 获取实体数据库链接
2. 建立类,继承基类,用基本类型描述数据库结构
3. 基类调用类结构,根据描述在引擎上建立数据表

 

 

设置联合惟一

    __table_args__=(
        UniqueConstraint("student_id","hobby_id",name="uix_student_id_hobby_id"),
    )
相关文章
相关标签/搜索