天天看点

MySQL——pymysql的使用MySQL——python对mysql操作

MySQL——python对mysql操作

pymysql 模块

# 1.模块的安装:pip install pymysql 或者进入setting

# 2.代码连接
import pymysql
# 连接
conn = pymysql.connect(
    host="127.0.0.1",
    port=3306,
    user="root",
    password='',
    database="day41",
    charset = "utf8"
)
# 游标操作
cursor = conn.cursor()# 默认以元组的形式返回是返回
# cursor = conn.cursor(pymysql.cursors.DictCursor)# 参数规定以字典形式返回

3.对数据库的操作
res = cursor.excute('select * from class') # 发送指令到mysql
print(res) # 查询到数据的总调条数不是所有详细信息(rows)

print (cursor.fetchone()) # 获取一个查询的结果,同时游标往后移动一个
print (cursor.fetchone())
cursor.scroll(1,"absloute") # 绝对位置,参照开始位置1
# cursor.scroll(1,"relative") # 相对位置
print (cursor.fetchone())
print('---------------------------------------------------')
# # print(cursor.fetchall()) # 获取所有数据

                
MySQL——pymysql的使用MySQL——python对mysql操作

Python——对数据MySQL操作

# 增
SQL = "insert into user(username,password) values(%s,%s)"
rows = cursor.excute(sql,("jason","123"))

# 一次插入多汗记录
res = cursor.excytemany(sql,[(),(),()])                
MySQL——pymysql的使用MySQL——python对mysql操作
# 改
sql = "update user set username= jasonDSB where id=1"
rows = cuesor.excute(sql)
# 注: 需要在确认数据无误后,commit执行后才会将数据真正的修改到数据库
conn.commit()
                

用户名密码例子

import pymysql

conn = pymysql.connect(
    host='127.0.0.1',
    port=3306,
    user='root',
    password='',
    charset='utf8'

)

cursor = conn.cursor(pymysql.cursors.DictCursor)
username = input('name:')
password = input('password')
# 新增用户
# sql = "insert into userinfo (name,password) values(%s,%s)"

# 更改用户信息
# sql = "update userinfo set name ='jasonDSB' where id =1 "

# 查看信息
sql = "select * from userinfo where name=%s and password=%s "

# res = cursor.excute(sql,(username,password)) # 有mysql来执行数据的导入
res = cursor.execute(sql)
conn.commit() # 确认数据正确后,commit执行后才导入数真正的修改数据库

if res:
    print(cursor.fetchone())
    
else:
    print('用户名密码错误')
    
                    

SQL 注入问题

# 不要手动去拼接查询sql语句
username = input(">>>:").strip()
password = input(">>>:").strip()
sql = "select * from user where username='%s' and password='%s'"%(username,password)
# 用户名正确
username >>>: jason' -- jjsakfjjdkjjkjs
# 用户名密码都不对的情况
username >>>: xxx' or 1=1 --asdjkdklqwjdjkjasdljad   
password >>>: ''
                    
MySQL——pymysql的使用MySQL——python对mysql操作
MySQL——pymysql的使用MySQL——python对mysql操作
MySQL——pymysql的使用MySQL——python对mysql操作

转载于:https://www.cnblogs.com/king-home/p/10882124.html