当前位置:   article > 正文

python3连接mysql数据库,简单实现注册、登录判断_python创建一个窗口操作mssql登录注册

python创建一个窗口操作mssql登录注册
  1. # 先创建数据库,并插入一条数据,用sha1加密处理后密码固定是40位,所以用char
  2. create table userinfos(id int primary key auto_increment not null,
  3. name varchar(20),passwd char(40));
  4. # 插入数据,用户名abc,密码123
  5. insert into userinfos(name,passwd)values('abc','40bd001563085fc35165329ea1ff5c5ecbdbbeef');
  1. #!/usr/bin/env python
  2. # coding=utf-8
  3. # 实现注册
  4. import pymysql
  5. from MysqlHelper import MysqlHelper
  6. from hashlib import sha1
  7. # 提示注册信息
  8. print("=============欢迎注册=============")
  9. user_name = input("请输入注册名:")
  10. passwd = input("请输入密码:")
  11. # 对密码进行加密
  12. s1 = sha1()
  13. s1.update(passwd.encode())
  14. pwd = s1.hexdigest()
  15. # 连接数据库
  16. conn = pymysql.connect(host="localhost",port=3306,user="root",passwd="123456",db="python3")
  17. cursor = conn.cursor()
  18. # 创建插入sql语句
  19. sql = "insert into userinfos(name,passwd)VALUES(%s,%s)"
  20. cursor.execute(sql,[user_name,pwd])
  21. conn.commit()
  22. cursor.close()
  23. conn.close()
  24. print("注册成功!")
  25. # 连接数据库方法二
  26. # conn = MysqlHelper("localhost",3306,"python3","root","123456")
  27. # sql = "insert into userinfos(name,passwd)VALUES(%s,%s)"
  28. # conn.cud(sql,[user_name,pwd])

 

  1. #!/usr/bin/env python
  2. # coding=utf-8
  3. # 实现登录判断
  4. from hashlib import sha1
  5. from MysqlHelper import MysqlHelper
  6. import pymysql
  7. # 提示用户输入账号信息
  8. print("=============欢迎登录=============")
  9. user_name = input("请输入用户名:")
  10. passwd = input("请输入密码:")
  11. # 对密码进行加密
  12. s1 = sha1()
  13. s1.update(passwd.encode())
  14. pwd2 = s1.hexdigest()
  15. # 连接数据库方法一
  16. conn = pymysql.connect(host="localhost",port=3306,user="root",passwd="123456",db="python3")
  17. cursor = conn.cursor()
  18. sql="select passwd from userinfos WHERE name=%s"
  19. cursor.execute(sql,[user_name])
  20. result = cursor.fetchall()
  21. # 连接数据操作方法二,利用封装
  22. # conn = MysqlHelper("localhost",3306,"python3","root","123456")
  23. # sql = "select passwd from userinfos WHERE name=%s"
  24. # result = conn.all(sql,[user_name])
  25. # print(result)
  26. # 判断处理
  27. if len(result) == 0:
  28. print("用户名错误!")
  29. elif result[0][0] == pwd2:
  30. print("登录成功!")
  31. else:
  32. print("密码错误!")

连接数据库操作封装代码:

  1. #!/usr/bin/env python
  2. # coding=utf-8
  3. # mysql封装使用
  4. import pymysql
  5. class MysqlHelper():
  6. def __init__(self,host,port,db,user,passwd,charset='utf8'):
  7. self.host = host
  8. self.port = port
  9. self.db = db
  10. self.user = user
  11. self.password = passwd
  12. self.charset = charset
  13. def open(self):
  14. # 连接数据库
  15. self.conn = pymysql.connect(host=self.host,port=self.port,db=self.db,
  16. user=self.user,passwd=self.password,charset=self.charset)
  17. # 创建游标对象
  18. self.cursor = self.conn.cursor()
  19. # 关闭
  20. def close(self):
  21. self.cursor.close()
  22. self.conn.close()
  23. # 增加、修改、删除命令语句
  24. def cud(self,sql,params):
  25. try:
  26. self.open()
  27. # 处理逻辑数据,传入sql语句以及参数化
  28. self.cursor.execute(sql,params)
  29. # 执行事务
  30. self.conn.commit()
  31. self.close()
  32. print("操作成功")
  33. except Exception as e:
  34. self.conn.rollback()
  35. print("错误",e)
  36. # 查询所有数据,多个值
  37. def all(self,sql,params=()):
  38. try:
  39. self.open()
  40. self.cursor.execute(sql,params)
  41. data = self.cursor.fetchall()
  42. self.close()
  43. return data
  44. except Exception as e:
  45. print("错误", e)

 

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号