用python连接数据库模拟用户登录
使用pycharm下载pymysql库,在终端输入命令:
pip install mysql

使用pycharm写登入操作前需要在数据库内添加一些数据,比如用户名和密码
create database pydb; use pydb; create table if not exists user( u_id int primary key auto_increment, u_name varchar(10), u_password varchar(40) )default charset=utf8;
再插入一个数据在数据库中
INSERT INTO user(u_name,u_password)VALUES('zhangsan',123456);
下载完成之后导入pymysql库
pymysql的常用函数
db = pymysql.connect(参数列表)
db.close()
#关闭连接
db.commit()
#提交到数据库执行
db.rollback()
#回滚:由于一些错误的发生,导致执行不成功,可以通过这个语句,回滚到错误前的状态
cursor = db.cursor()
#返回游标对象,执行具体sql命令需要使用游标对象
#模拟用户登录
#思路:首先获得用户输入的用户名密码,连接数据库,获取查询结果,将结果和用户输入数据进行比对
import pymysql
db=pymysql.connect(host='localhost',user='root',password='123456',database='pydb',port=3306)
u_name=input('输入用户名:')
u_password=input('输入密码:')
#获取游标对象
cursor=db.cursor()
sql='''SELECT * FROM user'''
try:
cursor.execute(sql)
#获取查询的结果
results=cursor.fetchall()
for i in results:
name=i[1]
pwd=i[2]
if(name==u_name and pwd==u_password):
print('登陆成功:'+u_name)
elif(name==u_name and pwd!=u_password):
print('密码错误')
else:print('用户名不存在')
db.commit()
except Exception as e:
print(e)
db.rollback()
db.close()
测试登录成功

用python连接数据库模拟用户登录的更多相关文章
- python 初学习 模拟用户登录
#!/usr/bin/env python#coding:utf-8''' 2017年8月19日 模拟用户登录,userfile 文件保存字典 用户名,和密码 sorryname 文件保存字典 登录过 ...
- 模拟用户登录含注册——python第8天
print('欢迎登录尚雅梦想python学习系统'.center(30)) print('******' * 8) flag = True while flag: order = input(''' ...
- python小练习--模拟用户登录,(3次重试机会,登录成功展示登录账号密码)
知识点使用:1.格式化输出的两种方法---% .formate 2.while循环的使用,及跳出循环的两种方法---break(跳出循环体).continue(结束本次循环,继续下次循环) 3.if条 ...
- python用scrapy模拟用户登录
scrapy模拟登录 关注公众号"轻松学编程"了解更多. 注意:模拟登陆时,必须保证settings.py里的COOKIES_ENABLED(Cookies中间件) 处于开启状态 ...
- 运用String类实现一个模拟用户登录程序
package Test; import java.util.Scanner; // 模拟用户登录程序 // 思路: // 1.用两个String类分别接收用户名和密码 // 2.判断输入的用户名和密 ...
- java.net.URL 模拟用户登录网页并维持session
java.net.URL 模拟用户登录网页并维持session 半成品,并非完全有用 import java.io.BufferedReader; import java.io.InputStream ...
- python3.0 模拟用户登录,三次错误锁定
# -*- coding:utf-8 -*- #需求模拟用户登录,超过三次错误锁定不允许登陆 count = 0 #realname passwd Real_Username = &quo ...
- xpath技术解析xml以及案例模拟用户登录效果
问题:当使用dom4j查询比较深的层次结构的节点(标签,属性,文本),比较麻烦!!! xpath就在此情况下产生了--主要是用于快速获取所需的[节点对象]. 在dom4j中如何使用xPath技术 1) ...
- jdbc封装模拟用户登录
dao层 接口 package com.qu.dao; public interface ILoginDAO { /** * 模拟用户登录 * 验证用户名 密码是否正确 * select * from ...
随机推荐
- 一个最简单 node.js 命令行工具
一个最简单 node.js 命令行工具 node.js cli $ node cli.js xyz # OR $ node cli xyz 接受参数 process.argv js "use ...
- docs search & algolia & docsearch
docs search & algolia & docsearch https://www.algolia.com/docsearch https://www.algolia.com/ ...
- base 64 & blob & image url
base 64 & blob & image url base 64 image & e.clipboardData.items[1] https://codepen.io/x ...
- Vue SSR in Action
Vue SSR in Action https://ssr.vuejs.org/ https://ssr.vuejs.org/api/ https://ssr.vuejs.org/guide/data ...
- NGK全球行伦敦站,SPC推动全球数字金融创新
近日,NGK全球巡回路演在英国的首都伦敦盛大落幕,此次路演有幸邀请到了西欧区块链业界弗洛伊德大咖,NGK方面代表鲍利斯以及英国及其组周边国家社群意见代表马丁内斯等人,总计参与人数达到了数十人. 路演一 ...
- 高性能环形队列框架 Disruptor 核心概念
高性能环形队列框架 Disruptor Disruptor 是英国外汇交易公司LMAX开发的一款高吞吐低延迟内存队列框架,其充分考虑了底层CPU等运行模式来进行数据结构设计 (mechanical s ...
- 【开源】.net微服务开发引擎Anno 让复杂的事简单点- 日志、链路追踪一目了然 (上)
1.Anno简介? Anno是一个微服务框架引擎.入门简单.安全.稳定.高可用.全平台可视化监控.依赖第三方框架少.详情请查看<[开源].net微服务开发引擎Anno开源啦> 本章主题:. ...
- 翻译:《实用的Python编程》03_03_Error_checking
目录 | 上一节 (3.2 深入函数) | 下一节 (3.4 模块) 3.3 错误检查 虽然前面已经介绍了异常,但本节补充一些有关错误检查和异常处理的其它细节. 程序是如何运行失败的 Python 不 ...
- HDOJ-3065(AC自动机+每个模板串的出现次数)
病毒侵袭持续中 HDOJ-3065 第一个需要注意的是树节点的个数也就是tree的第一维需要的空间是多少:模板串的个数*最长模板串的长度 一开始我的答案总时WA,原因是我的方法一开始不是这样做的,我是 ...
- ASP.NET Core扩展库
亲爱的.Neter们,在我们日复一日的编码过程中是不是会遇到一些让人烦恼的事情: 日志配置太过复杂,各种模板.参数也搞不清楚,每次都要去查看日志库的文档,还需要复制粘贴一些重复代码,好无赖 当需要类型 ...