mysql在线编程_mysql 用python连接

本文介绍了如何使用Python的pymysql库连接和操作MySQL数据库,包括建立连接、执行SQL语句、获取查询结果以及断开连接。通过示例代码展示了如何验证用户登录,强调了在处理数据时需要注意的细节。
摘要由CSDN通过智能技术生成

昨天的学会了吗?如果你告诉我,你没看怎么使用sql语句,用了图形化,那你今天绝对学不会

目录:

0 准备材料

1 安装库

2 主要部分:怎么使用

0 准备材料

python

e10653f01a49d17324f9a8aeabc5d68b.png

mysql

1 安装库

凡是干啥事情,都离不来库,没有库,啥也干不了

今天这个库叫pymysql,pip应该都会吧

0b79475ff39ebda846ad1a54ee921b9e.png

pip install pymysql

安装好后,打开python测试:

import pymysql

151c9cbf5fea233ed92520c520b9f9a4.png

2 主要部分:怎么使用

(如果是用虚拟机的,那你这程序就是在虚拟机中运行,如果你用的是自己的电脑,那就可以方便一点,在自己的电脑直接试)

(1)链接数据库

要用数据库,那肯定是要连接啊

# 导入pymysql库import pymysql# 连接数据库sql = pymysql.connect(host="localhost",# 服务器IP/域名user="root",# 用户名password="123456",# 密码database="test"# 数据库)# 断开数据库sql.close()

服务器的IP就是对应昨天navicat的主机名,用户名密码就是连接数据库的用户名密码和昨天一样,数据库就是需要操作的数据库,相当于昨天的这个(如果不知道,就把第一个数据库的名字填进去):

a60c3a9a6b030cfdcbb3df06bd0d9896.png

没报错,特别好

f90a33df33f9233f6521475a799f1f82.png

没报错,我们就成功了!!

(记得最后要使用sql.close()来断开连接哦)

(2)运行sql代码,并获取返回结果

假如,我们需要获取一个用户的密码,那该怎么办呢

483609df91cc85bf6ee663764f6e9e00.png

还是昨天的users表来举例(阴魂不散的users)

# 导入pymysql库import pymysql# 连接数据库sql = pymysql.connect(host="localhost",# 服务器IP/域名user="root",# 用户名password="123456",# 密码database="test"# 数据库)# 创建一个cursorcursor = sql.cursor()# 用execute来执行sqlcursor.execute("select * from users")# 获取返回数据data = cursor.fetchall()# 输出数据print(data)# 断开数据库sql.close()

大家一起猜猜,输出出来的是啥?

如果你说是["10000", "aaa", "123abc"]那么恭喜你!猜对了一半,其实,输出出来的是(('10000', 'aaa', '123abc'),)那我们要比对密码,肯定要先把用户名揪出来这时for循环登场了!!大概思路:

done = None # 完成情况,默认为Nonefor x, y, z in data:# x是id# y是用户名# z是密码if y == 输入的用户名:# 比对密码:if z == 输入的密码:done = True # 登录成功,设置done为Trueprint("登录成功!")else:done = False # 登录失败,设置done为Falseprint("登陆失败!")# done还是None# 说明没有找到这个用户名if done == None:print("登陆失败!用户未找到!")

写成完整代码就是:

# 导入pymysql库import pymysql# 连接数据库sql = pymysql.connect(host="localhost",# 服务器IP/域名user="root",# 用户名password="123456",# 密码database="test"# 数据库)# 创建一个cursorcursor = sql.cursor()# 用execute来执行sqlcursor.execute("select * from users")# 获取返回数据data = cursor.fetchall()# 输入账户密码username = input("请输入要登录的用户名>>> ")password = input("请输入该用户登录密码>>> ")# 比对密码done = Nonefor x, y, z in data:if y == username:if z == password:print("密码正确")done = Trueelse:print("密码错误")done = Falseif done == None:print("账户不存在!")# 断开数据库sql.close()

效果很好!

今天到这里就1000字结束了!

记得点个赞和在看哦!

有钱的,麻烦点一下“喜欢作者”哦!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值