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 pymysqlconn = 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 pymysqldef 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() #关闭数据库连接breakelse: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('注册成功')passdef 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数据库并创建数据库。