# -*- coding: utf-8 -*- from sqlalchemy import Column, String, create_engine from sqlalchemy.orm import sessionmaker from sqlalchemy.ext.declarative import declarative_base from _sqlalchemy.models import Person Base = declarative_base() class User(Base): __tablename__ = 'user' id = Column(String(20), primary_key=True) name = Column(String(20)) engine = create_engine('mysql+mysqlconnector://root:@localhost:3306/demo') DBSession = sessionmaker(bind=engine) if __name__ == '__main__': session = DBSession() new_user = Person(first_name='David', last_name="Zeng") session.add(new_user) session.commit() session.close()
首先是导入declarative_base,这是我要建立的对象的基本父类,而后而后就能够建立本身的对象了,首先是建立一个engine链接,我使用的是mysql,因此个人链接连接是mysql=mysqlconnector://root:@localhost:3306/demo,其中的密码不存在是由于我本地数据库没密码,而后我用的数据库是本身建立的demo,建立了链接以后就用sqlalchemy的会话绑定这个链接,产生一个可用的和数据库的会话,具体原理后面我还得再了解一下再继续写,到这一步基本就差很少了,接下来就是本身对于对象的建立了,好比我new了一个对象,而后把这个对象经过会话进行了添加,这个时候其实尚未存到数据库,只是将这个操做放到了会话当中,只有等我commit以后才是真的被添加到数据库当中,若是session不用了,最好是close掉,防止资源的浪费。mysql