from sqlalchemy import Column, String, create_engine from sqlalchemy.orm import sessionmaker from sqlalchemy.ext.declarative import declarative_base from sqlalchemy.dialects.mysql import TEXT, INTEGER, VARCHAR, DATETIME, TINYINT # 创建对象的基类 Base = declarative_base() # 定义User对象 class User(Base): # 表的名字 __tablename__ = 'user' # 表的结构 id = Column(INTEGER, primary_key=True, autoincrement=True, comment='id关联表自增id') name = Column(String(20)) # 初始化数据库链接 engine = create_engine('mysql+pymysql://root:xiaoge@localhost:3306/tapp') # 创建DBSession类型 DBSession = sessionmaker(bind=engine) # # 添加 # # 创建Session对象 # session = DBSession() # # 创建User对象 # new_user = User(name='Bob') # # 添加到session # session.add(new_user) # # 提交 # session.commit() # # 关闭session # session.close() # 查询 # 创建session session = DBSession() # 利用session创建查询,query(对象类).filter(条件).one()/all() # filters = {'name': 'Bob', 'id': 6} # user_list = session.query(User).filter_by(**filters).filter(User.id > 1).all() # filters = {'name': , 'id': 6} user_list = session.query(User).filter(User.name.like('Bob'), User.id.like(2)).all() for user in user_list: print('type:{0}'.format(user.id)) print('name:{0}'.format(user.name)) # 关闭session session.close() # # 更新 # session = DBSession() # user_result = session.query(User).filter_by(id='5').first() # user_result.name = "jack" # session.commit() # session.close() # 删除 # session = DBSession() # user_del = session.query(User).filter_by(id='5').first() # session.delete(user_del) # session.commit() # session.close()