1. mysql的连接

操作步骤:导包  import pymysql数据库连接设置    conn=pymysql.connect(host,user,passwd,port,db,charset)生成游标     cur=conn.cursor(cursor=pymysql.cursors.DictCursor)编写sql语句  sql='select * from  student'执行sql语句  cur.excute(sql)获取数据   data=cur.fetchall()关闭游标   cur.close()关闭连接   conn.close()
# 数据库连接设置
conn = pymysql.connect(host="127.0.0.1", port=3306,user="root", password="123456",database="test",charset='utf8')
# 生成游标
cur = conn.cursor()# 数据库进行操作
sql = 'select * from student'
res = cur.execute(sql)
# 一是为了验证连接是否成功,二是查看返还值到底是什么
print(res)  # 5# 如何获取返回的数据
# 1-获取查询结果中所有的返回数据
all_data = cur.fetchall()
print(all_data)  #((1, 'zs', 18), (2, 'ls', 19), (3, 'ww', 18), (4, 'zl', 16), (5, 'jack', 17))# 2-获取查询结果中1条返回数据
data = cur.fetchmany(3) #((1, 'zs', 18), (2, 'ls', 19), (3, 'ww', 18))
print(data)one_data = cur.fetchone()
print(one_data) #(4, 'zl', 16)# 3-获取查询结果中前3条返回数据
data = cur.fetchmany(3)
print(data)# 游标的移动# 关闭游标
cur.close()
# 关闭连接
conn.close()

2. 数据库的增删改查

# 数据库连接设置
conn = pymysql.connect(host="127.0.0.1", port=3306,user="root", password="123456",database="test",charset='utf8',autocommit=True)
# 生成游标
cur = conn.cursor()# 数据库进行操作# 增加操作
sql_insert = 'insert into student(name,age) values("五月天1",20);'
res = cur.execute(sql_insert)# 一是为了验证连接是否成功,二是查看返还值到底是什么
print(res)  # 5
# python操作Mysql数据库时,默认是手动提交事务的方式
# 1:自己来写提交的sql
conn.commit()  #
# 2:设置Mysql是自动提交事务的这种方式  --推荐# # 修改操作
sql_update = 'update student set name = "珏" where name="五月天1";'
res = cur.execute(sql_update)# # 删除操作
sql_delete = 'delete from student where id =5;'
res = cur.execute(sql_delete)# 执行多条sql语句
sql = 'insert into student(name,age) values(%s,%s);'
data = [("muzi1",20),("muzi2",20)]
cur.executemany(sql,data)def fun(name,age):sql = 'insert into student(name,age) values("{}",{});'.format(name,age)cur.execute(sql)fun('zs',18)
fun('lisa',20)# 关闭游标
cur.close()
# 关闭连接
conn.close()

3. Mysql数据库的游标移动操作

移动光标,scroll(value, mode)方法
参数:当mode='relative'时,代表相对移动,默认值,value就是移动的长度,value>0向后移动(从位置0移动到位置2),value<0向前移动(比如从位置2移动到位置0)当mode='absolute'时,代表绝对移动,value就代表移动的绝对位置,value=0就代表移动到位置0处,就是结果集开头,value=3就是移动到位置3处,也就是第4条记录处。
# 数据库连接设置
conn = pymysql.connect(host="127.0.0.1", port=3306,user="root", password="123456",database="test",charset='utf8')
# 生成游标
cur = conn.cursor()# 数据库进行操作
sql = 'select * from student'
res = cur.execute(sql)
# 一是为了验证连接是否成功,二是查看返还值到底是什么
print(res)  # 5# 如何获取返回的数据
# 1-获取查询结果中所有的返回数据
all_data = cur.fetchall()
print(all_data)  #((1, 'zs', 18), (2, 'ls', 19), (3, 'ww', 18), (4, 'zl', 16), (5, 'jack', 17))# # 2-获取查询结果中1条返回数据
data = cur.fetchmany(3) #((1, 'zs', 18), (2, 'ls', 19), (3, 'ww', 18))
print(data)# 游标的移动
# 需求1:要求移动游标,获取一条数据,数据内容:(1, 'zs', 18)
# 绝对位置的移动
# cur.scroll(value=0, mode='absolute') #结果集的开头就是0# 相对位置的移动
cur.scroll(value=-3, mode='relative')one_data = cur.fetchone()
print(one_data) #(2, 'ls', 19)# 获取倒数的3条记录
# 控制游标的移动
cur.scroll(value=res-3, mode='relative')data = cur.fetchmany(3)
print(data)# 关闭游标
cur.close()
# 关闭连接
conn.close()

【python】mysql的操作相关推荐

  1. Python - MySQL数据库操作

    Python2 中使用模块 MySQLdb 模块处理数据库的操作,在Python3中使用 PyMySQL Python2 - 数据库的操作 1. MySQLdb 安装 yum -y install M ...

  2. python mysql latin1_python操作Mysql数据库

    python操作Mysql数据库 目前工作中主要使用的还是mysql数据库,这里把常用的函数做下总结. python3选择使用pymysql包进行数据库操作,使用pip3 install PyMySQ ...

  3. python mysql数据库操作grid控件_Python学习笔记_02:使用Tkinter连接MySQL数据库实现登陆注册功能...

    1 环境搭建 1.1 Python安装 本文具体实现部分Python环境:Python2.7.14,64位版本 附:配置PythonIDE,推荐PyCharm(具体IDE界面见下图),下载点击运行即可 ...

  4. Python Mysql 数据库操作

    2019独角兽企业重金招聘Python工程师标准>>> 本文实例讲述了python中MySQLdb模块用法.分享给大家供大家参考.具体用法分析如下: MySQLdb其实有点像php或 ...

  5. python mysql dbutils_python操作mysql数据库增删改查的dbutils实例

    #encoding=utf-8 importMySQLdbimportgconf#主类 classMysqlConnection(object):def __init__(self, host, po ...

  6. python mysql res_python操作mysql(三)查询

    #_*_coding:utf-8_*_ import MySQLdb DBHOST = "192.168.89.101" DBUSER = "root" DBP ...

  7. Python模块MySQLdb操作mysql出现2019错误:Can't initialize character set utf-8

    我使用python的MySQLdb模块实现了一个mysql client, 在测试时,出现了如下错误 Python模块MySQLdb操作mysql出现2019错误:Can't initialize c ...

  8. python实现数据库事务回滚_使用Python脚本实现MySQL误操作的快速回滚

    1.简介 在Oracle数据库中,当一个误操作被提交后,我们可以通过Oracle提供的闪回功能将表闪回至误操作之前的状态.mysql中没有原生的flushback功能,DBA误操作时,传统的恢复方式是 ...

  9. python启动mysql_Python操作MySQL

    安装PyMySQL python中连接mysql的客户端主要有mysqldb.mysql-connector.pymysql三种.虽说性能上面各有差别,但是主流市场还是以操作便捷.使用简单为选择条件. ...

  10. python mysql倒序_day40:MySQL:python操作mysql:pymysql模块SQL注入攻击

    目录 part1:用python连接mysql 1.用python连接mysql的基本语法 创建连接conn→创建游标对象cursor→执行sql语句execute→获取数据fetchone→释放游标 ...

最新文章

  1. mysql数据库utf-8编码
  2. cocos2d-x游戏实例(27)-简易动作游戏(5)
  3. linux ping监控脚本,WINDOWS和LINUX下带时间的PING包监控脚本
  4. MFC初探 —— 文件与文件夹的选择与拷贝
  5. 公司想建个FTP文件服务器,自己折腾把一台电脑做成文件服务器了,但是考虑稳定性放弃,计划买个有哪些建议?
  6. 如何安装win10与linux双系统,Windows10与CentOS 双系统共存完美教程
  7. C++多态虚函数demo
  8. Node.js:node项目中连接postgresql以及基础使用
  9. 再也不学AJAX了!(一)AJAX概述
  10. Necurs僵尸网络重操旧业发送垃圾邮件 影响股票市场
  11. springboot关闭http登录验证
  12. mac安装win7之后鼠标失灵_苹果电脑安装win7时键盘鼠标无响应3种解决方案
  13. ffmpeg 截取切割视频报错
  14. PSM价格敏感度模型
  15. 注册Apple ID -- 常识
  16. 谱密度 matlab,功率谱密度估计方法的matlab实现.doc
  17. 什么是5G LAN 5G LAN商用爆发推动5G创新应用 提速数字转型新引擎
  18. 【Qt象棋游戏】08_人机博弈高阶算法
  19. logstash-plugin install报错message: certificate verify failed
  20. C语言字符串、转义字符

热门文章

  1. 绩效管理KPI指标体系设计:142页KPI设计思路与实施实践
  2. vCenter HA (至少VCSA6.5及以上)
  3. Linux学习总结(78)—— 常见开源协议讲解
  4. Kubernetes学习总结(16)—— Kubernetes 实战之部署 Redis 集群
  5. 网站性能测试指标:QPS、TPS、吞吐量、响应时间概述
  6. 计算机知识点背诵了就忘了怎么办,背得滚瓜烂熟的知识点,为什么一上考场全忘了?这样做,事半功倍…...
  7. java 求集合真子集_【同步练习】高一高中数学必修1集合的关系与元素性质
  8. 如何隐藏电脑下方工具栏个别图标_最酷!最帅!最拽!这就是你想要的样子!工具栏美化终极篇...
  9. 蒋步星:轻量级大数据计算引擎
  10. Mac安装sqlite3