python操作MySQL

8.18内容整理和概述

今日内容概要

内容目录

  • python操作MySQL
  • SQL注入问题

python操作MySQL

第三方模块:pip3 install pymysql

方法:
	1.cursor.fetchone():获取结果集中一条数据
	2.cursor.fetchall():获取结果集中所有数据
	3.cursor.fetchmany(数量):获取结果集中指定条的数据
	4.cursor.scroll(2, mode='relative'):基于当前位置往后移动
	5.cursor.scroll(0, mode='absolute'):基于数据集开头的位置往后移动
	6.MySQL语句+comment:注释
	7.exists:exists后面的sql语句如果有结果那么执行前面的sql语句
    
操作步骤:
    1.链接服务端:
        conn = pymysql.connect(
            host='127.0.0.1',
            port=3306,
            user='root',
            password='123',
            database='db5',
            charset='utf8mb4',
            autocommit=True  # 执行增、改、删操作自动执行conn.commit,提交事务
        )
	2.产生一个游标对象:
		cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)
	3.编写SQL语句:
		sql1 = 'SQL语句'
	4.发送给服务端
		cursor.execute(sql1)
	5.获取命令的执行结果
		res = cursor.fetchall()

SQL注入问题

本质:利用一些特殊符号的组合产生了特殊的含义从而逃脱了正常的业务逻辑
措施:
	1.sql = "select * from userinfo where name=%s and pwd=%s"
	2.cursor.execute(sql, (username, password))
posted @ 2022-08-21 19:33  维生素Z  阅读(8)  评论(0)    收藏  举报