sqlalchemy--一个神奇的模块

按照惯例,先吹一波

sqlachemy是python 操作数据库的一个库。能够进行 orm 映射官方文档sqlachemy。sqlachemy“采用简单的Python语言,为高效和高性能的数据库访问设计,实现了完整的企业级持久模型”。sqlachemy的理念是,SQL数据库的量级和性能重要于对象集合;而对象集合的抽象又重要于表和行。

首先下载模块-->pip install sqlachemy

接下来就是干货了。

#引入需要的模块和包

from sqlalchemy import Column, String, Integer, create_engine, and_

#Column映射数据库的列即字段,String是字符串类型,Integer是整型,create_engine用来创建一

#个引擎 ,and_是逻辑与

from sqlalchemy.orm import sessionmaker

#sessionmaker用来创建一个关联数据库的会话对象

from sqlalchemy.ext.declarative import declarative_base

#declarative_base是一个元类用于构建一个基类

# sqlalchemy默认使用mysqldb完成和数据库的连接操作

#由于mysqldb没有支持python3.4+版本,要使用pymysql替代

importpymysql

pymysql.install_as_MySQLdb()

#创建和数据库的连接引擎对象:通过引擎对象可以直接操作sql语句

engine=create_engine("mysql://root:123456@localhost:3306/tornado",echo=True)

#构建和数据库的会话对象

db_session=sessionmaker(bind=engine)

#构建一个基础模型类:自定义的所有类型继承自该类型

BaseModel=declarative_base()

#定义自定义类型

classUser(BaseModel):

          #自定义类型和数据库中表的关联关系

        __tablename__="user"

        #创建类型的属性,同时关联数据库中表的字段

        id=Column(Integer,primary_key=True,autoincrement=True)

        name=Column(String(50))

        age=Column(Integer)

#接下来就可以定义自己需要的函数进行数据库的增删改查了:

我拿增加举例:

defcreate_user(name,pwd):

    #打开数据库会话

    session=db_session()

    #创建一个模型对象

    user=User(username=name,password=pwd)

    #增加对象数据到数据库

    session.add(user)

    #增删改操作完成,提交事务【提交数据】查询不用提交

    session.commit()

    #注意:数据库操作完成之后,关闭和数据库之间的会话

    session.close()

希望能对大家有所帮助

你可能感兴趣的:(sqlalchemy--一个神奇的模块)