您的位置:首页 > 博客中心 > 数据库 >

python ORM - sqlalchemy 操作使用

时间:2022-03-15 07:00

python操作数据库



‘‘‘创建表 article ‘‘‘
class Article(Base):

    __tablename__ = ‘article‘
    id = Column(Integer,primary_key=True,autoincrement=True)
    content = Column(String(50),nullable=True)
    create_time = Column(DateTime,default=datetime.now())

    article_user = relationship(‘User‘,backref=‘article‘,secondary=user_article)# 创建映射关系

    def __repr__(self):  # 重写repr 便于阅读
        return  ‘Article(id=%s,content=%s,create_time=%s)‘%(
            self.id,
            self.content,
            self.create_time
        )


if __name__ == ‘__main__‘:
    Base.metadata.create_all() # 执行

 

三 、 ‘‘‘简单的 增、删、查、改 操作 ‘‘‘

 

 

# -*- coding:utf-8 -*-
from connect import session
from user_module import User

def add_user(): # 增
    # persson = User(username=‘xiaohong‘,password=‘qwe123‘,id=1)
    # session.add(persson)  # 提交单条数据

    # 一次提交多条数据 , 注意 这里 all 里面是列表
    session.add_all(
        [
        User(username=‘小红‘, password=‘qwe123mmm‘),
        User(username=‘老王‘, password=‘12345nnnnn‘),
        User(username=‘小明‘, password=‘654321hhhhh‘),
        ]
    )
    session.commit() # 必须提交

def search_user(): # 查询 默认repr 便于机器阅读,需要重写
    rows = session.query(User).all()
    print(rows)

def update_user(): # 改
    session.query(User).filter(User.id==2).update({User.password:1})
    session.commit()

def delete_user(): # 删除
    # rows = session.query(User).filter(User.id==2)[0]
    rows = session.query(User).all()
    print(rows)
    for i in rows: # 如果查到的数据量大,就是用循环删除 
        session.delete(i)
    session.commit()


if __name__ == ‘__main__‘:
    add_user()
    # search_user()
    # delete_user()
    # update_user()

 

 

 

 

 

 

 

推荐文章:廖雪峰的 

       脚本之家的  

       z+j  的  

      K.Takanashi 的  

    

 

本类排行

今日推荐

热门手游