zoukankan      html  css  js  c++  java
  • SQLAlchemy的使用---增删改查

    #通过SQLAlchemy对数据库进行增删改查
    # 想要操作数据库 先要打开数据库连接
    from create_table import engine
    # 创建会话 - 打开数据库连接
    from sqlalchemy.orm import sessionmaker
    # 创建会话窗口
    Session = sessionmaker(engine)
    # 打开会话窗口
    db_session = Session()
    from create_table import User
    user_obj = User(name='XJ')
    
    # 通过db_session(已经打开的会话窗口)
    db_session.add(user_obj)
    # 提交执行操作
    db_session.commit()
    # 关闭会话
    db_session.close()
    
    # 增加批量数据
    from create_table import User
    db_session.add_all([
        User(name='XJ1'),
        User(name='XJ2'),
        User(name='XJ3')
    ])
    db_session.commit()
    db_session.close()
    添加数据
    # 更新修改数据
    
    from sqlalchemy.orm import sessionmaker
    from create_table import engine,User
    
    Session = sessionmaker(engine)
    db_session = Session()
    
    # 1.修改数据
    # SQL语句
    # update User set 'name' = '徐建' where id = 2
    
    user = db_session.query(User).filter(User.id==2).update({'name':'徐建'})
    db_session.commit()
    db_session.close()
    修改数据
    # 删除数据
    from sqlalchemy.orm import sessionmaker
    from create_table import engine, User
    
    Session = sessionmaker(engine)
    db_session = Session()
    
    
    # 1.删除
    
    # SQL语句
    # delete from user where id =2
    
    user = db_session.query(User).filter(User.id==2).delete()
    print(user)
    
    db_session.commit()
    db_session.close()
    
    # 2.删除多条
    res = db_session.query(User).filter(User.name=='XJ2').delete()
    db_session.commit()
    db_session.close()
    print(res)
    删除数据
    # 查询
    # 会话窗口
    from sqlalchemy.orm import sessionmaker
    from create_table import engine
    
    Session = sessionmaker(engine)
    
    db_session = Session()
    from create_table import User
    # 查询所有
    
    # SQL语句
    # select * from table
    
    user_list = db_session.query(User).all()
    for row in user_list:
        print(row.id, row.name)
    
    # 查询一个
    user = db_session.query(User).first()
    print(user.name)
    
    # 带条件的查询
    user_list = db_session.query(User).filter(User.id==2).all()
    print(user_list[0].name)
    
    user = db_session.query(User).filter_by(id=4).first()
    print(user.id, user.name)
    
    user_list = db_session.query(User).filter(User.id>=2).all()
    for row in user_list:
        print(row.id, row.name)
    
    
    db_session.close()
    查询数据
  • 相关阅读:
    pandas--对axis=0,axis=1的理解
    启动secondarynamenode时报错
    5月27日经历问题(在有框架的情况下从无到有增加一套功能)
    5.21工作记录(修改页面跳转,去掉多余的js;增加图片清除功能)
    工作记录520
    5月14日经历问题
    idea快捷键
    Linux下常用redis指令
    初识lunix
    Redis
  • 原文地址:https://www.cnblogs.com/Treasuremy/p/10385680.html
Copyright © 2011-2022 走看看