如何用Python操作数据库?( 三 )

测试
1.测试查询多条数据
import mysqlHelper# 初始化对象helper = mysqlHelper.MysqlHelper('127.0.0.1', 'root', '123456', 'python01')# 连接helper.connect()# sqlsql = 'select * from t_user where name = %s and id > %s'# paramsparams = ['小茗',1]# 执行data = helper.fetchall(sql, params)# 判断if data: for temp in data: print(temp)else: # None,False,0 print('没有数据.')helper.close()2.测试查询一条数据
import mysqlHelper# 初始化对象helper = mysqlHelper.MysqlHelper('127.0.0.1', 'root', '123456', 'python01')# 连接helper.connect()# sqlsql = 'select * from t_user where id = %s'#sql = 'select * from t_user where id = 1'# paramsparams = [2]# 执行data = helper.fetchone(sql, params)#data = helper.fetchone(sql)# 判断if data: print(data)else: # None,False,0 print('没有数据.')3.测试增删改
import mysqlHelperimport time# 初始化对象helper = mysqlHelper.MysqlHelper('127.0.0.1', 'root', '123456', 'python01')# 连接helper.connect()# sqlsql = 'update t_user set name =%s,pwd=%s,birthday=%s where id=%s'# paramsid = input('输入编号:')name = input('输入姓名:')pwd = input('输入密码:')birthday = time.strptime(input('输入生日:'), '%Y年%m月%d日')params = [name, pwd, birthday,id]# 执行count = helper.update(sql, params)# 判断if count: print('操作成功.')else: # None,False,0 print('操作失败.')4.简单的登录和注册
做项目的时候会有个尝试登录和注册的时候需要对密码进行加密进行存储,刚好结合sql语句进行一个简单的交互 。
注意:

  • 需要对密码进行加密
  • 如果使用md5加密,则密码包含32个字符
  • 如果使用sha1加密,则密码包含40个字符,这里使用这种方式
create table userinfos( id int primary key auto_increment, uname varchar(20), upwd char(40), isdelete bit default 0);/*ret = doPwd('123')print(ret)结果:40bd001563085fc35165329ea1ff5c5ecbdbbeef */-- 插入如下数据,用户名为123,密码为123,这是sha1加密后的值insert into userinfos values(1,'123','40bd001563085fc35165329ea1ff5c5ecbdbbeef',0);登录与注册
import hashlibfrom mysqlHelper import MysqlHelperdef login(): '''登录''' name = input('输入用户名:') pwd = input('输入密码:') #加密 pwd = doPwd(pwd) helper = MysqlHelper('127.0.0.1', 'root', '123456', 'python01') helper.connect() sql = 'select * from t_user where name=%s and pwd=%s' params = [name, pwd] data = helper.fetchone(sql, params) if data: print('登录成功.') else: # None,False,0 print('登录失败.')def doPwd(pwd): '''sha1编码''' mysha1 = hashlib.sha1() mysha1.update(pwd.encode('utf-8')) pwd = mysha1.hexdigest() return pwddef register(): '''注册''' name = input('输入用户名:') pwd = input('输入密码:') # 加密 pwd = doPwd(pwd) helper = MysqlHelper('127.0.0.1', 'root', '123456', 'python01') helper.connect() sql = 'insert into t_user(name,pwd) values(%s,%s)' params = [name, pwd] count = helper.insert(sql, params) if count: print('操作成功.') else: # None,False,0 print('操作失败.')if __name__ == '__main__': #register() login()实际项目中的登录注册往往加入了各种验证,这里的代码只是一个简单的登录注册,只为了学习交流 。
来源网络,侵权联系删除

【如何用Python操作数据库?】


推荐阅读