1. pymysql模块
在使用pymysql模块前需要学习数据库MySQL:《MySQL基础》。
1.1 pymysql的下载和使用
看完MySQL基础,我们都是通过MySQL自带的命令行客户端工具mysql来操作数据库,那如何在python程序中操作数据库呢?这就用到了pymysql模块,该模块本质就是一个套接字客户端软件,使用前需要事先安装。
1.1.1 pymysql模块的下载
pip3 install pymysql
踩雷的地方:
pip版本低,建议是删除pip,再重新安装。
1.1.2 pymysql的使用
数据库和数据都已存在
#实现:使用Python实现用户登录,如果用户存在则登录成功(假设该用户已在数据库中)
importpymysql
user= input('请输入用户名:')
pwd= input('请输入密码:')#1.连接
conn = pymysql.connect(host='127.0.0.1', port=3306, user='root', password='root', db='db8', charset='utf8')#2.创建游标
cursor =conn.cursor()#注意%s需要加引号
sql = "select * from userinfo where username='%s' and pwd='%s'" %(user, pwd)print(sql)#3.执行sql语句
cursor.execute(sql)
result=cursor.execute(sql) #执行sql语句,返回sql查询成功的记录数目
print(result)#关闭连接,游标和连接都要关闭
cursor.close()
conn.close()ifresult:print('登陆成功')else:print('登录失败')
1.2 execute()之sql注入
最后那一个空格,在一条sql语句中如果遇到select * from userinfo where username='xhh' -- asadasdas'and pwd=''则--之后的条件被注释掉了(注意--后面还有一个空格)<