Python结合MySQL数据库编写简单信息管理系统

1,项目整体逻辑及使用工具

1.1 项目整体逻辑

本项目主要是使用Python进行编写,利用Python中的pymysql库进行连接数据库,将信息存入MySQL数据库中,然后实现对信息进行增删改查等一系列操作。

1.2 使用工具

(1):使用pymysql库
(2):python 3.9
(3):MySQL 8.0

1.3 pymysql库的安装

pip install pymysql

2,数据库的搭建

2.1本项目为简单的信息管理系统的实现

创建数据库一个六个字段分如下:
在这里插入图片描述

2.2数据库搭建代码

create table if not exists information(
    pid int primary key AUTO_INCREMENT,    -- 主键
    users varchar(20) not null ,           -- 账号
    cod varchar(20),                       -- 密码
    name varchar(20),                      -- 姓名
    age int,                               -- 年龄
    mobile varchar(50)                    -- 电话号码
);

3,Python代码编写

3.1 使用pymysql进行连接数据库

import pymysql
 conn = pymysql.connect(
        host='127.0.0.1',
        port=3306,
        user='root',
        password='123456'
    )
    cus = conn.cursor()  # 创建游标
    sql=""              # 编写sql语句
    cus.execute(sql)    #使用游标执行sql语句
    conn.commit()       #进行提交
    cus.close()    #关闭游标
    conn.close()   #关闭数据库连接

3.2 系统界面进行编写

print('*' * 54)
print('【1】注册用户信息')
print('【2】删除用户信息')
print('【3】修改用户信息')
print('【4】查询用户信息')
print('【5】退出系统')
print('*' * 54)
n = input('请输入你要执行的命令')
if n == '1':
   register(cus,conn)
elif n == '2':
    strike(cus, conn)
elif n == '3':
     modify(cus, conn)
elif n == '4':
     inquiry(cus,conn)
elif n == '5':
      cus.close()    #关闭游标
      conn.close()   #关闭数据库连接
      break
else:
     print('输入错误请重新输入')

3.3 对用户注册模块进行编写

def register(cus,conn):      #  注册模块
    users=input('请输入用户账号')
    cod=input('请输入用户密码')
    name=input('请输入用户姓名')
    age=int(input('请输入用户年龄'))
    mobile=input('请输入用户的手机号')
    sql=f"insert into xinxi.information(users,cod,name,age,mobile) values ('{users}','{cod}','{name}',{age},'{mobile}')"
    cus.execute(sql)
    conn.commit()
    print('注册成功')
    pass

3.4 对用户信息删除模块进行编写

def strike(cus,conn):     #删除用户
    users = input('请输入需要删除的用户账号')
    cod = input('请输入密码')
    sql = f"select * from xinxi.information where users='{users}' and cod='{cod}'"
    n = cus.execute(sql)
    # conn.commit()   # 提交信息
    # print(n)
    if n:
        sql =f"delete from xinxi.information where users='{users}' and cod='{cod}'"
        cus.execute(sql)
        conn.commit()
        print('删除成功')
    else:
        print('查无此人')

3.5 对用户信息修改模块进行编写

def modify(cus,conn):  #修改信息
    users=input('请输入需要修改的用户账号')
    cod=input('请输入密码')
    sql=f"select * from xinxi.information where users='{users}' and cod='{cod}'"
    n=cus.execute(sql)
    #conn.commit()   # 提交信息
    #print(n)
    if n:
        users1 = input('请输入需要修改的用户账号')
        cod1 = input('请输入需要修改用户密码')
        name = input('请输入需要修改用户姓名')
        age = int(input('请输入需要修改用户年龄'))
        mobile = input('请输入需要修改用户的手机号')
        sql=f"update xinxi.information set users='{users1}',cod='{cod1}',name='{name}',age={age},mobile='{mobile}' where users='{users}' and cod='{cod}'"
        cus.execute(sql)
        conn.commit()
        print('修改成功')
    else:
        print('查无此人')

3.6 对用户信息查询模块进行编写

def inquiry(cus,conn):     #查询信息
    users = input('请输入需要查询的用户账号')
    cod = input('请输入密码')
    sql = f"select * from xinxi.information where users='{users}' and cod='{cod}'"
    n = cus.execute(sql)
    if n:
        sql = f"select name,age,mobile from xinxi.information where users='{users}' and cod='{cod}'"
        cus.execute(sql)      #接收数据
        u=cus.fetchall()
        #conn.commit()
        print('用户的姓名为:',u[0][0])
        print('用户的年龄为:',u[0][1])
        print('用户的电话为',u[0][2])
    else:
        print('查无此人')

4,系统整体代码

# 需求,登陆后会用户进行查询
import pymysql


def main():
    conn = pymysql.connect(
        host='127.0.0.1',
        port=3306,
        user='root',
        password='123456'
    )
    cus = conn.cursor()  # 创建
    while True:
        print('*' * 54)
        print('【1】注册用户信息')
        print('【2】删除用户信息')
        print('【3】修改用户信息')
        print('【4】查询用户信息')
        print('【5】退出系统')
        print('*' * 54)
        n = input('请输入你要执行的命令')
        if n == '1':
            register(cus,conn)
        elif n == '2':
            strike(cus, conn)
        elif n == '3':
            modify(cus, conn)
        elif n == '4':
            inquiry(cus,conn)
        elif n == '5':
            cus.close()    #关闭游标
            conn.close()   #关闭数据库连接
            break
        else:
            print('输入错误请重新输入')

def register(cus,conn):      #  注册模块
    users=input('请输入用户账号')
    cod=input('请输入用户密码')
    name=input('请输入用户姓名')
    age=int(input('请输入用户年龄'))
    mobile=input('请输入用户的手机号')
    sql=f"insert into xinxi.information(users,cod,name,age,mobile) values ('{users}','{cod}','{name}',{age},'{mobile}')"
    cus.execute(sql)
    conn.commit()
    print('注册成功')
    pass

def strike(cus,conn):     #删除用户
    users = input('请输入需要删除的用户账号')
    cod = input('请输入密码')
    sql = f"select * from xinxi.information where users='{users}' and cod='{cod}'"
    n = cus.execute(sql)
    # conn.commit()   # 提交信息
    # print(n)
    if n:
        sql =f"delete from xinxi.information where users='{users}' and cod='{cod}'"
        cus.execute(sql)
        conn.commit()
        print('删除成功')
    else:
        print('查无此人')

def modify(cus,conn):  #修改信息
    users=input('请输入需要修改的用户账号')
    cod=input('请输入密码')
    sql=f"select * from xinxi.information where users='{users}' and cod='{cod}'"
    n=cus.execute(sql)
    #conn.commit()   # 提交信息
    #print(n)
    if n:
        users1 = input('请输入需要修改的用户账号')
        cod1 = input('请输入需要修改用户密码')
        name = input('请输入需要修改用户姓名')
        age = int(input('请输入需要修改用户年龄'))
        mobile = input('请输入需要修改用户的手机号')
        sql=f"update xinxi.information set users='{users1}',cod='{cod1}',name='{name}',age={age},mobile='{mobile}' where users='{users}' and cod='{cod}'"
        cus.execute(sql)
        conn.commit()
        print('修改成功')
    else:
        print('查无此人')

def inquiry(cus,conn):     #查询信息
    users = input('请输入需要查询的用户账号')
    cod = input('请输入密码')
    sql = f"select * from xinxi.information where users='{users}' and cod='{cod}'"
    n = cus.execute(sql)
    if n:
        sql = f"select name,age,mobile from xinxi.information where users='{users}' and cod='{cod}'"
        cus.execute(sql)      #接收数据
        u=cus.fetchall()
        #conn.commit()
        print('用户的姓名为:',u[0][0])
        print('用户的年龄为:',u[0][1])
        print('用户的电话为',u[0][2])
    else:
        print('查无此人')

if __name__ == '__main__':
    main()

使用本程序需要安装MySQL数据库并创建数据库。

  • 10
    点赞
  • 131
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
好的,以下是一个简单的学生管理系统Python代码,使用MySQL作为数据库: ```python import mysql.connector # 连接数据库 db = mysql.connector.connect( host="localhost", user="yourusername", password="yourpassword", database="students" ) # 创建游标 cursor = db.cursor() # 创建学生表 cursor.execute("CREATE TABLE students (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), age INT, gender VARCHAR(255), grade VARCHAR(255))") # 插入学生信息 def insert_student(name, age, gender, grade): sql = "INSERT INTO students (name, age, gender, grade) VALUES (%s, %s, %s, %s)" val = (name, age, gender, grade) cursor.execute(sql, val) db.commit() print(cursor.rowcount, "记录插入成功!") # 更新学生信息 def update_student(id, name, age, gender, grade): sql = "UPDATE students SET name = %s, age = %s, gender = %s, grade = %s WHERE id = %s" val = (name, age, gender, grade, id) cursor.execute(sql, val) db.commit() print(cursor.rowcount, "记录更新成功!") # 删除学生信息 def delete_student(id): sql = "DELETE FROM students WHERE id = %s" val = (id, ) cursor.execute(sql, val) db.commit() print(cursor.rowcount, "记录删除成功!") # 查询学生信息 def get_students(): cursor.execute("SELECT * FROM students") students = cursor.fetchall() for student in students: print(student) # 测试 insert_student("张三", 18, "男", "一年级") insert_student("李四", 19, "女", "二年级") update_student(1, "张三三", 19, "女", "二年级") delete_student(2) get_students() # 关闭数据库连接 db.close() ``` 这段代码包括了创建学生表、插入、更新、删除、查询学生信息等基本操作。你可以根据自己的需求进行修改和扩展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值