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 相关文章推荐
在Django的视图中使用form对象的方法
Jul 18 Python
Python 模拟购物车的实例讲解
Sep 11 Python
Python编程实现线性回归和批量梯度下降法代码实例
Jan 04 Python
python函数修饰符@的使用方法解析
Sep 02 Python
Python全栈之列表数据类型详解
Oct 01 Python
利用Python小工具实现3秒钟将视频转换为音频
Oct 29 Python
Python @property原理解析和用法实例
Feb 11 Python
Python3.7实现验证码登录方式代码实例
Feb 14 Python
tensorflow下的图片标准化函数per_image_standardization用法
Jun 30 Python
Python制作运行进度条的实现效果(代码运行不无聊)
Feb 24 Python
python基础之爬虫入门
May 10 Python
Python数据可视化之绘制柱状图和条形图
May 25 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 Hash函数,增强密码安全
2011/02/25 PHP
json的键名为数字时的调用方式(示例代码)
2013/11/15 PHP
php简单实现查询数据库返回json数据
2015/04/16 PHP
Laravel配置全局公共函数的方法步骤
2019/05/09 PHP
PHP设计模式(一)工厂模式Factory实例详解【创建型】
2020/05/02 PHP
js实现照片墙功能实例
2015/02/05 Javascript
jquery控制表单输入框显示默认值的方法
2015/05/22 Javascript
jQuery实现两款有动画功能的导航菜单代码
2015/09/16 Javascript
易被忽视的js事件问题总结
2016/05/14 Javascript
jQuery实现页面下拉100像素出现悬浮窗口的方法
2016/09/05 Javascript
原生JS实现几个常用DOM操作API实例
2017/01/19 Javascript
nodejs个人博客开发第三步 载入页面
2017/04/12 NodeJs
微信小程序实现锚点定位楼层跳跃的实例
2017/05/18 Javascript
JQuery 选择器、DOM节点操作练习实例
2017/09/28 jQuery
微信小程序 input输入及动态设置按钮的实现
2017/10/27 Javascript
Vue项目前后端联调(使用proxyTable实现跨域方式)
2020/07/18 Javascript
python3编码问题汇总
2016/09/06 Python
python中的常量和变量代码详解
2018/07/25 Python
Python安装pycurl失败的解决方法
2018/10/15 Python
Python ORM编程基础示例
2020/02/02 Python
python 项目目录结构设置
2020/02/14 Python
python标准库OS模块函数列表与实例全解
2020/03/10 Python
django xadmin 管理器常用显示设置方式
2020/03/11 Python
探讨HTML5移动开发的几大特性(必看)
2015/12/30 HTML / CSS
意大利会呼吸的鞋:Geox健乐士
2017/02/12 全球购物
Vichy薇姿加拿大官网:法国药妆,全球专业敏感肌护肤领先品牌
2018/07/11 全球购物
汽车维修专业个人求职信范文
2014/01/01 职场文书
护理工作感言
2014/01/16 职场文书
学生安全责任书范本
2014/07/24 职场文书
2014企业年终工作总结
2014/12/23 职场文书
成品仓管员岗位职责
2015/04/01 职场文书
2015年教师教学工作总结
2015/04/28 职场文书
离婚案件原告代理词
2015/05/23 职场文书
2016医师资格考试考生诚信考试承诺书
2016/03/25 职场文书
创业项目(超低成本创业项目)
2019/08/16 职场文书
MySQL令人大跌眼镜的隐式转换
2021/08/23 MySQL