mysql 用python连接
Posted 编程者爱好专区
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql 用python连接相关的知识,希望对你有一定的参考价值。
昨天的学会了吗?如果你告诉我,你没看怎么使用sql语句,用了图形化,那你今天绝对学不会
目录:
0 准备材料
1 安装库
2 主要部分:怎么使用
0 准备材料
python
1 安装库
凡是干啥事情,都离不来库,没有库,啥也干不了
今天这个库叫pymysql,pip应该都会吧
pip install pymysql
安装好后,打开python测试:
import pymysql
2 主要部分:怎么使用
(如果是用虚拟机的,那你这程序就是在虚拟机中运行,如果你用的是自己的电脑,那就可以方便一点,在自己的电脑直接试)
(1)链接数据库
要用数据库,那肯定是要连接啊
# 导入pymysql库
import pymysql
# 连接数据库
sql = pymysql.connect(
host="localhost",# 服务器IP/域名
user="root",# 用户名
password="123456",# 密码
database="test"# 数据库
)
# 断开数据库
sql.close()
服务器的IP就是对应昨天navicat的主机名,用户名密码就是连接数据库的用户名密码和昨天一样,数据库就是需要操作的数据库,相当于昨天的这个(如果不知道,就把第一个数据库的名字填进去):
没报错,特别好
没报错,我们就成功了!!
(记得最后要使用sql.close()来断开连接哦)
(2)运行sql代码,并获取返回结果
假如,我们需要获取一个用户的密码,那该怎么办呢
还是昨天的users表来举例(阴魂不散的users)
# 导入pymysql库
import pymysql
# 连接数据库
sql = pymysql.connect(
host="localhost",# 服务器IP/域名
user="root",# 用户名
password="123456",# 密码
database="test"# 数据库
)
# 创建一个cursor
cursor = sql.cursor()
# 用execute来执行sql
cursor.execute("select * from users")
# 获取返回数据
data = cursor.fetchall()
# 输出数据
print(data)
# 断开数据库
sql.close()
大家一起猜猜,输出出来的是啥?
如果你说是["10000", "aaa", "123abc"]那么恭喜你!猜对了一半,其实,输出出来的是(('10000', 'aaa', '123abc'),)那我们要比对密码,肯定要先把用户名揪出来这时for循环登场了!!大概思路:
done = None # 完成情况,默认为None
for x, y, z in data:
# x是id
# y是用户名
# z是密码
if y == 输入的用户名:
# 比对密码:
if z == 输入的密码:
done = True # 登录成功,设置done为True
print("登录成功!")
else:
done = False # 登录失败,设置done为False
print("登陆失败!")
# done还是None
# 说明没有找到这个用户名
if done == None:
print("登陆失败!用户未找到!")
写成完整代码就是:
# 导入pymysql库
import pymysql
# 连接数据库
sql = pymysql.connect(
host="localhost",# 服务器IP/域名
user="root",# 用户名
password="123456",# 密码
database="test"# 数据库
)
# 创建一个cursor
cursor = sql.cursor()
# 用execute来执行sql
cursor.execute("select * from users")
# 获取返回数据
data = cursor.fetchall()
# 输入账户密码
username = input("请输入要登录的用户名>>> ")
password = input("请输入该用户登录密码>>> ")
# 比对密码
done = None
for x, y, z in data:
if y == username:
if z == password:
print("密码正确")
done = True
else:
print("密码错误")
done = False
if done == None:
print("账户不存在!")
# 断开数据库
sql.close()
效果很好!
今天到这里就1000字结束了!
记得点个赞和在看哦!
有钱的,麻烦点一下“喜欢作者”哦!
以上是关于mysql 用python连接的主要内容,如果未能解决你的问题,请参考以下文章