zoukankan      html  css  js  c++  java
  • ORM操作mysql

    创建表和添加数据

    import sqlalchemy
    from sqlalchemy import create_engine
    from sqlalchemy.ext.declarative import declarative_base
    from sqlalchemy import Column, Integer, String
    from sqlalchemy.orm import sessionmaker


    engine = create_engine("mysql+pymysql://root:lizhaoqwe@10.20.252.223/test_db", echo=True)#echo=True可以查看详细信息
    Base = declarative_base()
    #创建表
    class User(Base):
    __tablename__ = 'user'#表名
    id = Column(Integer, primary_key=True)
    name = Column(String(32))
    password = Column(String(64))
      
        def __repr__(self):#显示ORM查询执行后的结果(不加这个方法返回的是内存地址)
    return '%s:%s' % (self.name, self.password)


    Base.metadata.create_all(engine) #创建表结构

    #创建连接
    Session_class = sessionmaker(bind=engine) #创建与数据库的会话session class,注意,这里返回的是一个类,不是一个实例
    session = Session_class()#生成session实例 #可以先理解成curson游标
    #查询
    # data = session.query(User).filter(User.id < 2).all()#是一个列表
    data = session.query(User).filter(User.id > 2).filter(User.id < 5)
    #查询出来后直接赋值修改数据
    data.name = 'username'
    data.password = 'password'
    session.commit()

    print(data)
    #插入数据
    user_obj1 = User(name='lizhao', password='lizhaoqwe123')#生成要创建的数据对象
    user_ibj2 = User(name='test', password='testqwe123')
    session.add(user_obj1)
    session.add(user_ibj2)
    session.commit()#必须commit之后才会添加数据
  • 相关阅读:
    杭电OJ 输入输出练习汇总
    七月读书笔记
    情报分析报告阅读笔记
    情报研究与分析入门阅读笔记
    旁观者攻击
    域前置技术相关学习
    CC攻击和C2的区别
    DNS投毒学习分析总结
    数字证书2.0版本学习总结
    《在树洞里》-感悟
  • 原文地址:https://www.cnblogs.com/fengzi7314/p/9329248.html
Copyright © 2011-2022 走看看