pymysql模块的操作实例


Posted in Python onDecember 17, 2019

pymysql 模块!

pymysql模块时一个第三方模块!需要下载:

pymysql的基本使用:

import pymysql

conn = pymysql.connect(
  user = 'root',
  password = '123',
  host = '127.0.0.1', # ip地址
  port = 3306,    # 端口
  charset = 'utf8',
  database = 'day36_1'
)
cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)# 产生游标对象
# cursor=pymysql.cursors.DictCursor 将查询出来的结果制成字典的形式返回
sql = "select * from userinto"
res = cursor.execute(sql) #执行sql语句

res = cursor.fetchone() # 打印一条数据
res = cursor.fetchall() # 可以打印里面的所有数据
res = cursor.fetchmany(2)  #制定获取几条数据,如果数字超了也不报错

print(res)

cursor.scroll(2, 'relative') #相对移动 , 基于指针所在位置, 往后偏移

cursor.scroll(3, 'absolute') #绝对移动,基于起始位置往后偏移

print(cursor.fetchall())

我们可以通过python导入模块来连接数据库,进行登陆注册功能,在使用时sql会遇到注入问题

sql注入问题 利用特殊符号和注释语法 巧妙的绕过真正的sql校验,是用户数据不安全
关键性的数据 不要自己手动去拼接 而是交由execute帮你去做拼接

import pymysql

conn = pymysql.connect(
  user = 'root' ,
  password = '123',
  host = '127.0.0.1',
  port = 3306,
  database = 'day36_1',
  charset = 'utf8'
)
cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)

#获取用户名和密码,然后取数据库中校验
username = input('username>>>:').strip()
password = input('password>>>:').strip()
sql = "select * from userinto where name=%s and password=%s"
print(sql)
cursor.execute(sql, (username, password)) #交由execute帮你去做拼接,解决注入问题
res = cursor.fetchall()

if res:
  print(res)
else:
  print('username or password error!')

我们也可以利用pycharm来操作数据库文件的增删改查!

针对增 删 改操作 执行重要程度偏高

你如果真想操作 必须有一步确认操作(commit)

import pymysql
conn = pymysql.connect(
  user = 'root',
  passwd = '123456',
  db = 'day36',
  host = '127.0.0.1',
  port = 3306,
  charset = 'utf8',
  autocommit = True # 自动提交确认
)
cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)
# #查: 获取用户输入的用户名和密码 然后取数据库中校验
# username = input('username>>>:').strip()
# password = input('password>>>:').strip()
# # sql = "select * from userinfo where name='%s' and password= '%s'"%(username,password)
# sql = "select * from userinfo where name=%s and password= %s"
# print(sql)

# 增
sql = "insert into userinfo(name,password,dep_id) values('jason',789,1)"
# 改
# sql = "update userinfo set name='egondsb' where id = 6"
# 删除
# sql = "delete from userinfo where id= 1"
res = cursor.execute(sql)
# conn.commit() # 确认当前操作 真正的同步到数据库
print(res)

以上就是相关知识点内容,感谢大家的学习和对三水点靠木的支持。

Python 相关文章推荐
Python中使用摄像头实现简单的延时摄影技术
Mar 27 Python
让python在hadoop上跑起来
Jan 27 Python
Django接受前端数据的几种方法总结
Nov 04 Python
python分割列表(list)的方法示例
May 07 Python
详解用python实现简单的遗传算法
Jan 02 Python
Pytorch实现GoogLeNet的方法
Aug 18 Python
python 画函数曲线示例
Dec 04 Python
python有序查找算法 二分法实例解析
Feb 18 Python
五分钟带你搞懂python 迭代器与生成器
Aug 30 Python
使用Python解析Chrome浏览器书签的示例
Nov 13 Python
如何利用python生成MD5并去重
Dec 07 Python
用python修改excel表某一列内容的操作方法
Jun 11 Python
Django异步任务线程池实现原理
Dec 17 #Python
python 求10个数的平均数实例
Dec 16 #Python
python 经典数字滤波实例
Dec 16 #Python
Python实现把类当做字典来访问
Dec 16 #Python
python中p-value的实现方式
Dec 16 #Python
基于python读取.mat文件并取出信息
Dec 16 #Python
python基于plotly实现画饼状图代码实例
Dec 16 #Python
You might like
水质对咖图啡风味的影响具体有哪些
2021/03/03 冲泡冲煮
利用js调用后台php进行数据处理原码
2006/10/09 PHP
PHP 加密解密内部算法
2010/04/22 PHP
解析thinkphp中的导入文件标签
2013/06/20 PHP
php判断数组元素中是否存在某个字符串的方法
2014/06/14 PHP
php中fgetcsv()函数用法实例
2014/11/28 PHP
JQuery datepicker 使用方法
2011/05/20 Javascript
yepnope.js使用详解及示例分享
2014/06/23 Javascript
基于jQuery通过jQuery.form.js插件实现异步上传
2015/12/13 Javascript
jquery插件之文字间歇自动向上滚动效果代码
2016/02/25 Javascript
jquery+css3问卷答题卡翻页动画效果示例
2016/10/26 Javascript
vue.js绑定class和style样式(6)
2016/12/09 Javascript
Bootstrap table使用方法详细介绍
2016/12/09 Javascript
js上下视差滚动简单实现代码
2017/03/07 Javascript
微信小程序canvas写字板效果及实例
2017/06/15 Javascript
微信小程序多列选择器range-key使用详解
2020/03/30 Javascript
vue实现列表滚动的过渡动画
2020/06/29 Javascript
js操作两个json数组合并、去重,以及删除某一项元素
2020/09/22 Javascript
openlayers实现图标拖动获取坐标
2020/09/25 Javascript
Python 条件判断的缩写方法
2008/09/06 Python
pycharm 使用心得(六)进行简单的数据库管理
2014/06/06 Python
Python利用带权重随机数解决抽奖和游戏爆装备问题
2016/06/16 Python
python遍历文件夹,指定遍历深度与忽略目录的方法
2018/07/11 Python
详解Python GUI编程之PyQt5入门到实战
2020/12/10 Python
英国户外服装品牌:Craghoppers
2019/04/25 全球购物
Ray-Ban雷朋瑞典官方网站:全球领先的太阳眼镜品牌
2019/08/22 全球购物
沙特阿拉伯排名第一的在线时尚购物应用程序:1Zillion
2020/08/08 全球购物
电子商务应届生自我鉴定
2014/01/13 职场文书
关于抽烟的检讨书
2014/02/25 职场文书
公共场所标语
2014/06/30 职场文书
承兑汇票转让证明怎么写?
2014/11/30 职场文书
昆虫记读书笔记
2015/06/26 职场文书
初二物理教学反思
2016/02/19 职场文书
正确使用MySQL update语句
2021/05/26 MySQL
python基础之模块的导入
2021/10/24 Python
SQLServer权限之只开启创建表权限
2022/04/12 SQL Server