python之用数据库实现用户管理。

本文介绍了一个基于Python和SQLAlchemy的用户管理系统的设计与实现过程。该系统实现了用户注册、登录、删除及查询等功能,并提供了完整的代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

学了数据库之后,我们可以用数据库来做一个用户管理的系统。实现注册,登陆,查看,删除用户等功能。
第一步:具体分成里两个部分,第一部分是连接数据库,,并且创建表,将表封装成一个类。
具体实现如下:

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

engine=create_engine("mysql+pymysql://root:westos@192.168.122.191/pymysql",
                     encoding='utf8',
                     # echo=True
                     )

Session =sessionmaker(bind=engine)

session=Session()

Base=declarative_base()

class Users(Base):
    __tablename__='Users'
    id =Column(Integer,primary_key=True,autoincrement=True)
    name=Column(String(20),nullable=False)
    password=Column(String(20),nullable=False)
    email=Column(String(30),unique=True)

    def __repr__(self):
        return self.name
if __name__ == '__main__':
    Base.metadata.create_all(engine)

封装好了之后就可以写管理系统了。
具体实现如下:

import db

cookie={}

class UserManage(object):

    def login(self,name,password):
        #从数据库中获取用户名和密码。验证是否正确,正确则登陆成功,反之则失败。
        obj=db.session.query(db.Users).filter_by(name=name).filter_by(password=password).first()
        if obj:
            print("%s登录成功"%name)
            cookie['name']=name
        else:
            print("用户名或密码错误。")
    def logout(self):
        cookie.pop('name')
        print("注销成功。")
    def register(self,user,password):
        #从数据库中获取信息,如果用户已3存在则提示用户存在,反之,则注册成功。
        username = db.session.query(db.Users).filter_by(name=user).first()
        if username:
            print("用户已存在。")
        else:
            obj=db.Users(name=user,password=password)
            db.session.add(obj)
            db.session.commit()
            print("%s用户注册成功。"%user)
    def deltel(self,user):
        #从数据库中获取对象信息。如果有,则删除。
        obj=db.session.query(db.Users).filter_by(name=user).first()
        if obj:
            print(obj)
            db.session.delete(obj)
            db.session.commit()
            print("%s用户删除成功。"%user)
        else:
            print("用户不存在。")
    def is_exists(self):
        obj=db.session.query(db.Users).all()
        print(obj)

if __name__ == '__main__':
    db.Base.metadata.create_all(db.engine)
    user1=UserManage()
    # 注册westos,
    user1.register('westos','westos')
    #注册westos1
    user1.register('westos1','westos')
    #验证登陆
    user1.login('westos','westos')
    # user1.deltel('westos')
    #查询所有用户。
    user1.is_exists()

下边就是我们程序运行的结果。
在这里插入图片描述
我们看下数据库的内容是一致的,这说明我们的系统就做好了。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值