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中的作用域规则详解
Jan 30 Python
不要用强制方法杀掉python线程
Feb 26 Python
PyCharm代码提示忽略大小写设置方法
Oct 28 Python
python Tkinter版学生管理系统
Feb 20 Python
详解Python正则表达式re模块
Mar 19 Python
Python实现直方图均衡基本原理解析
Aug 08 Python
python实现超市商品销售管理系统
Oct 25 Python
python如何设置静态变量
Sep 07 Python
Python基于Webhook实现github自动化部署
Nov 28 Python
Python time库的时间时钟处理
May 02 Python
Python道路车道线检测的实现
Jun 27 Python
Python pandas求方差和标准差的方法实例
Aug 04 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
php strlen mb_strlen计算中英文混排字符串长度
2009/07/10 PHP
PHP编码转换函数 自动转换字符集支持数组转换
2012/12/16 PHP
解析PHP无限级分类方法及代码
2013/06/21 PHP
使用PHP编写的SVN类
2013/07/18 PHP
Laravel 5.4因特殊字段太长导致migrations报错的解决
2017/10/22 PHP
PHP实现Redis单据锁以及防止并发重复写入
2018/04/10 PHP
基于jquery的表格排序
2010/09/11 Javascript
setTimeout和setInterval的区别你真的了解吗?
2011/03/31 Javascript
Jsonp 跨域的原理以及Jquery的解决方案
2011/06/27 Javascript
jquery实现商品拖动选择效果代码(自写)
2013/05/28 Javascript
二叉树先序遍历的非递归算法具体实现
2014/01/09 Javascript
jquery实现浮动在网页右下角的彩票开奖公告窗口代码
2015/09/04 Javascript
Angular directive递归实现目录树结构代码实例
2017/05/05 Javascript
Vue监听数据渲染DOM完以后执行某个函数详解
2018/09/11 Javascript
nodejs基础之常用工具模块util用法分析
2018/12/26 NodeJs
如何实现小程序tab栏下划线动画效果
2019/05/18 Javascript
vue实现员工信息录入功能
2020/06/11 Javascript
Angular进行简单单元测试的实现方法实例
2020/08/16 Javascript
[01:03:27]NAVI vs EG 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
简单了解Python中的几种函数
2017/11/03 Python
Python之Scrapy爬虫框架安装及简单使用详解
2017/12/22 Python
python3实现随机数
2018/06/25 Python
python实现大转盘抽奖效果
2019/01/22 Python
spyder 在控制台(console)执行python文件,debug python程序方式
2020/04/20 Python
python链表类中获取元素实例方法
2021/02/23 Python
与C++相比,Java中的数组有什么不同
2014/03/25 面试题
汉语专业应届生求职信
2013/10/01 职场文书
五一服装活动方案
2014/01/11 职场文书
2014年公司植树节活动方案
2014/03/04 职场文书
开发房地产协议书
2014/09/14 职场文书
村党支部书记四风问题个人对照检查材料思想汇报
2014/10/06 职场文书
班主任工作实习计划
2015/01/16 职场文书
公务员个人总结
2015/02/12 职场文书
餐饮店长岗位职责
2015/04/14 职场文书
2016三八妇女节校园广播稿
2015/12/17 职场文书
银行客户经理培训心得体会
2016/01/09 职场文书