#!/usr/bin/env python
# -*- coding: utf-8 -*-
# TODO 创建数据库 create table user (id varchar(20) primary key auto, name varchar(20))
# TODO 基本的增删该查
# 导入依赖
from sqlalchemy import Column, String, create_engine, Integer
from sqlalchemy.orm import sessionmaker
from sqlalchemy.ext.declarative import declarative_base
# 创建对象的基类
Base = declarative_base()
# 定义User对象
class User(Base):
# 表的名字
__tablename__ = 'user'
# 表的结构
id = Column(Integer, primary_key=True)
name = Column(String(20))
# 初始化数据库链接
engine = create_engine('mysql+pymysql://root:mysql@localhost:3306/test')
# 创建DBSession类型
DBSession = sessionmaker(bind=engine)
# TODO 添加,不写id会报错
# 创建Session对象
# session = DBSession()
# # 创建User对象
# new_user = User(id=1,name='小明')
# new_user = User(id='2',name='小刚')
# new_user1 = User(name='江小白')
# new_user2 = User(name='张三')
#
# # 添加到session
# session.add(new_user2)
# 提交
# session.commit()
# 关闭session
# session.close()
# TODO 查询
# 创建session
# session = DBSession()
# 利用session创建查询,query(对象类).filter(条件).one()/all()
# user = session.query(User).filter(User.id=='1').one()
# print('type:{0}'.format(type(user)))
# print('name:{0}'.format(user.name))
# print(user.id)
# a = session.execute('select * from user')
# for i in a:
# print(i.name)
# 关闭session
# session.close()
# TODO 更新
# session = DBSession()
# user_result = session.query(User).filter_by(id='1').first()
# user_result.name = "jack"
# session.commit()
# session.close()
# # 删除
# session = DBSession()
# user_willdel = session.query(User).filter_by(id='1').first()
# session.delete(user_willdel)
# session.commit()
# session.close()
参考链接