python-day11 pymysql

python 操作 mysql

#######select

import pymysql

# 获取数据conn = pymysql.Connect(host=‘192.168.12.89‘,port=3306,user=‘root‘,password="123",database="s17day11db",charset=‘utf8‘)cursor = conn.cursor()# 受影响的行数v = cursor.execute(‘select * from student‘)result = cursor.fetchall()# result = cursor.fetchone()# result = cursor.fetchmany(2)print(result)

cursor.close()conn.close()

###########other

# 获取数据conn = pymysql.Connect(host=‘192.168.12.89‘,port=3306,user=‘root‘,password="123",database="s17day11db",charset=‘utf8‘)cursor = conn.cursor()# 受影响的行数v = cursor.execute(‘insert into userinfo(username,password) values(%s,%s)‘,[‘eric‘,‘99999‘])conn.commit()v = cursor.execute(‘delete from userinfo where username=%s‘,[‘eric‘])conn.commit()v = cursor.execute(‘update userinfo set password=%s where username=%s‘,[‘999999‘,‘alex‘])conn.commit()

cursor.close()conn.close()

#################需求 新创建一个班级,并且 创建一个学生 加入这个班级 
import pymysql

# 获取数据conn = pymysql.Connect(host=‘192.168.12.89‘,port=3306,user=‘root‘,password="123",database="s17day11db",charset=‘utf8‘)cursor = conn.cursor()

cursor.execute(‘insert into class(caption) values(%s)‘,[‘新班级‘])conn.commit()new_class_id = cursor.lastrowid # 获取新增数据自增ID

cursor.execute(‘insert into student(sname,gender,class_id) values(%s,%s,%s)‘,[‘李杰‘,‘男‘,new_class_id])conn.commit()

cursor.close()conn.close()

解释:可以通过cursor.lastrowid 获取到 本脚本中执行的 自增ID然后放入吓一条sql中

#####################################被sql注入的写法,  以及 sql注入 
import pymysql

user = input(‘请输入用户名:‘)pwd = input(‘请输入密码:‘)

# 获取数据conn = pymysql.Connect(host=‘192.168.12.89‘,port=3306,user=‘root‘,password="123",database="s17day11db",charset=‘utf8‘)cursor = conn.cursor()sql = ‘select * from userinfo where username="%s" and password="%s" ‘ %(user,pwd,)# user = alex" --# pwd= asdf‘select * from userinfo where username="alex" -- " and password="sdfsdf"‘# user = asdfasdf" or 1=1  --# pwd= asdf‘select * from userinfo where username="asdfasdf" or 1=1  -- " and password="asdfasdf"‘v = cursor.execute(sql)result = cursor.fetchone()cursor.close()conn.close()

print(result)

###################防止sql注入
import pymysql

user = input(‘请输入用户名:‘)pwd = input(‘请输入密码:‘)

# 获取数据conn = pymysql.Connect(host=‘192.168.12.89‘,port=3306,user=‘root‘,password="123",database="s17day11db",charset=‘utf8‘)cursor = conn.cursor()sql = ‘select * from userinfo where username="%s" and password="%s" ‘ %(user,pwd,)# user = alex" --# pwd= asdf‘select * from userinfo where username="alex" -- " and password="sdfsdf"‘# user = asdfasdf" or 1=1  --# pwd= asdf‘select * from userinfo where username="asdfasdf" or 1=1  -- " and password="asdfasdf"‘v = cursor.execute(sql)result = cursor.fetchone()cursor.close()conn.close()

print(result)


				
时间: 2024-08-10 17:01:15

python-day11 pymysql的相关文章

Python中pymysql基本使用

Python中pymysql模块通过获取mysql数据库命令行游标执行数据库命令来进行数据库操作 优点:操作数据库语句所见即所得,执行了什么数据库语句都很清楚 缺点:操作繁琐,代码量多 1. pymysql的基本使用 # -*- coding:utf-8 -*- # Author:Wong Du import pymysql # 创建链接,相当于建立一个socket conn = pymysql.Connection(host='10.0.0.100', port=3306, user='roo

Python进阶----pymysql的安装与使用,mysql数据库的备份和恢复,mysql的事务和锁

Python进阶----pymysql的安装与使用,mysql数据库的备份和恢复,mysql的事务和锁 一丶安装 pip install PyMySQL 二丶pymysql连接数据库 ### 语法: import pymysql # 导入py模块 conn= pymysql.connect("数据库ip","用户","密码","数据库" ) # 打开数据库连接 cursor.execute("SELECT VERSI

Python 使用 PyMysql、DBUtils 创建连接池提升性能

Python 使用 PyMysql.DBUtils 创建连接池提升性能 Python 编程中可以使用 PyMysql 进行数据库的连接及诸如查询/插入/更新等操作,但是每次连接 MySQL 数据库请求时,都是独立的去请求访问,相当浪费资源,而且访问数量达到一定数量时,对 mysql 的性能会产生较大的影响.因此,实际使用中,通常会使用数据库的连接池技术,来访问数据库达到资源复用的目的. 解决方案:DBUtils DBUtils 是一套 Python 数据库连接池包,并允许对非线程安全的数据库接口

python之pymysql模块学习(待完善...)

pymysql介绍 pymysql是在python3.x版本中用于连接mysql服务器的一个库.python2中则使用mysqldb. 安装方法: pip install pymysql 使用实例: 此段代码是连接数据库并执行一条查询语句,并且打印出select出来的所有数据 1 #!/usr/bin/env python 2 3 import pymysql 4 5 #设置数据库地址 6 DB_host = '192.168.214.88' 7 #设置数据库名称 8 DB_name = 'te

mac多版本python安装 pymysql

系统里面安装了多个python的版本,有2.7和3.4等.默认的2.7版本,但我开发需要3.4版本的.默认情况下,用pip安装PyMySQL $sudo pip install PyMySQL 安装之后,在命令行里面测试 >>>import pymysql 如果没有报错,则表示安装成功. 但是,这个是在2.7版本下安装成功的.跑到eclipse里面去敲代码,还提示错误.只好到3.4版本下再下载一个. 找到3.4到安装路径,我的是 /Library/Frameworks/Python.fr

python的pymysql使用方法【转】

前言 pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同.但目前pymysql支持python3.x而后者不支持3.x版本. 本文测试python版本:2.6.6.mysql版本:5.7.17 一.安装 pip install pymysql 二.使用操作 创建测试环境 mysql> create database zst; Query OK, 1 row affected (0.03 sec) mysql> use zst Database changed

MySQl 数据库 之 python模块 pymysql 简单介绍

终端输入指令: pip3 install pymysql 如果失败就检查 pip 指令的环境变量是否配置; 若不会,则自行百度; 等待下载完成后, 在终端直接进入 python 环境, 导入该模块, 若无报错,则证明下载成功.(如下图所示) 二. 开始使用: 1, 在py文件中导入该模块: import pymysql 2, 连接数据库服务器: conn = pymysql.connect(host='127.0.0.1', port=3306, user='root', password=''

Python 安装pyMySQL过程记录

在使用 PyMySQL 之前,我们需要确保 PyMySQL 已安装. PyMySQL 下载地址:https://github.com/PyMySQL/PyMySQL. 如果还未安装,我们可以使用以下命令安装最新版的 PyMySQL: $ pip3 install PyMySQL 如果你的系统不支持 pip 命令,可以使用以下方式安装: 1.使用 git 命令下载安装包安装(你也可以手动下载): $ git clone https://github.com/PyMySQL/PyMySQL $ cd

python之pymysql模块简单应用

众所周知,想要在python程序中执行SQL语句需要使用第三方模块:pymysql. 下面,我将为大家简述一下pymysql第三方库的安装到使用的大体流程. pymysql的安装 1.windows系统通过pip安装pymysql: pip3 install pymysql 2.Liunx系统中,可以使用以下命令安装pymysql模块: sudo pip3 install pymysql 在python程序中连接数据库: 其流程可以分为6步,接下来我会为大家简述一下过程及代码. 1.导入模块 i

python use pymysql

import pymysql conn = pymysql.connect(host='localhost', port=3306, user='root', passwd='123456', db='mydb') cur = conn.cursor() cur.execute("SELECT * FROM users2") print(cur.description) print() for row in cur: print(row) cur.close() conn.close(