第二章实战补充:Python操作Mysql
( 一) 导入pymysql
基础铺垫:pymysql与MySQLdb
- pymysql–支持py2、py3;
- MySQLdb–仅支持python3;
- django内部默认为MySQLdb,用Python3需修改
代码:
import pymysql
( 二) 创建连接
基础铺垫:
代码:
conn = pymysql.connect(host='127.*.*.*', port=3306, user='root', passwd='****', db='t1')
- 如果报错,可以在db=’t1’后加,charset=’utf8’
( 三) 创建游标
基础铺垫:游标是什么意思?
- 类比说明:把数据库比作成一个仓库,数据操作的过程就相当于人去仓库拿东西,到仓库门口第一步是把仓库门打开,相当于创建了数据库连接,第二步就是到仓库里去拿东西(数据),游标就相当于伸手去拿东西,按照顺序从柜子上一层一层的拿东西。所以要去数据库里拿东西,创建连接与创建游标都要创建好。
代码(创建手):
cursor=conn.cursor()
代码(用手去拿东西):
cursor.execute('此处需替换为相应的SQL语句#@数据分析-jacky')
excute - 执行
SQL语句的基本操作:增、删、改、查;除了“查”以外,均需对创建游标这个过程给予确认,因为python认为它是重要操作。
代码(确认执行的SQL语句-提交):
conn.commit()
- 数据的增删改都是重要操作,需要确认的代码,查就不用确认commit代码了
( 四) 关闭游标、关闭连接
cursor.close()
conn.close()
( 五) 具体实操-Python 查询 mysql 数据
import pymysql
conn = pymysql.connect(host='127.*.*.*', port=3306, user='root', passwd='****', db='t1')
cursor=conn.cursor()
r=cursor.execute('select * from jacky的表')
#print(r)-- 显示的是受影响的行数,那么如何显示出数据呢?
result=cursor.fetchall()
print(result) #显示的是个元组:(1,‘男’,‘李明’),(2,‘女’,‘Lucy’)
- fetchall() 取全部
- fetchone() 取第一行
fetchmany(3) 取前三行
- fetch()相当于文件中的指针(绝对定位、相对定位)
- fetchmany()一般来说用不到
第二章实战补充:Python操作Mysql的更多相关文章
- Day12(补充) Python操作MySQL
本篇对于Python操作MySQL主要使用两种方式: 原生模块 pymsql ORM框架 SQLAchemy pymsql pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb ...
- 多表查询思路、navicat可视化软件、python操作MySQL、SQL注入问题以及其他补充知识
昨日内容回顾 外键字段 # 就是用来建立表与表之间的关系的字段 表关系判断 # 一对一 # 一对多 # 多对多 """通过换位思考判断""" ...
- python操作MySQL与MySQL补充
目录 python操作MySQL 基本使用 SQL注入问题 二次确认 视图 触发器 事务 存储过程 函数 流程控制 索引 练习 python操作MySQL python中支持操作MySQL的模块很多, ...
- python 操作 mysql基础补充
前言 本篇的主要内容为整理mysql的基础内容,分享的同时方便日后查阅,同时结合python的学习整理python操作mysql的方法以及python的ORM. 一.数据库初探 在开始mysql之前先 ...
- python操作MySQL,SQL注入的问题,SQL语句补充,视图触发器存储过程,事务,流程控制,函数
python操作MySQL 使用过程: 引用API模块 获取与数据库的连接 执行sql语句与存储过程 关闭数据库连接 由于能操作MySQL的模块是第三方模块,我们需要pip安装. pip3 insta ...
- Python操作MySQL:pymysql和SQLAlchemy
本篇对于Python操作MySQL主要使用两种方式: 原生模块 pymsql ORM框架 SQLAchemy pymsql pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb ...
- kafka实战教程(python操作kafka),kafka配置文件详解
kafka实战教程(python操作kafka),kafka配置文件详解 应用往Kafka写数据的原因有很多:用户行为分析.日志存储.异步通信等.多样化的使用场景带来了多样化的需求:消息是否能丢失?是 ...
- Python(九) Python 操作 MySQL 之 pysql 与 SQLAchemy
本文针对 Python 操作 MySQL 主要使用的两种方式讲解: 原生模块 pymsql ORM框架 SQLAchemy 本章内容: pymsql 执行 sql 增\删\改\查 语句 pymsql ...
- Python操作Mysql之基本操作
pymysql python操作mysql依赖pymysql这个模块 下载安装 pip3 install pymysql 操作mysql python操作mysql的时候,是通过”游标”来进行操作的. ...
随机推荐
- C# LoadXml System.Xml.XmlException: Data at the root level is invalid. Line 1, position 1.
去掉BOM头 writer = new XmlTextWriter(stream, new UnicodeEncoding(false,false)); 如果是UTF8 writer = new Xm ...
- Seaborn(二)之数据集分布可视化
Seaborn(二)之数据集分布可视化 当处理一个数据集的时候,我们经常会想要先看看特征变量是如何分布的.这会让我们对数据特征有个很好的初始认识,同时也会影响后续数据分析以及特征工程的方法.本篇将会介 ...
- 让一个父级div根据子级div高度而自适应高度
需求是点击上传的时候进行子级div高度不定,相对来说父级div高度也不能固定,把元素都设置成普通标准流,然后样式可以使用margin内边距或者padding外边距来进行调节 放上代码供参考: .opu ...
- BPM软件_财务报销流程管理解决方案_K2工作流引擎
财务报销,对任何企业都是日常运营中重要的一个环节.但报销流程周期长,反复签字手续繁杂,报销过程不透明 ,单据归档保存.检索困难等问题也让员工头疼.为了解决这些困扰,财务报销流程电子化一时成为热门之选. ...
- FlowPortal BPM 明细表中新添加的行一直排在最后的问题
明细表中的数据提交过之后再编辑时,添加的行不管在第几行添加都显示在最后一行的问题 Solution:明细表的数据库表中加字段OrderIndex,设为必填,系统会自动排序
- C++ 函数重载二义性
说起函数重载,我不由得想起了C++的“多态”特性.多态又分为静态(编译时)多态和动态(运行时)多态,静态多态即为函数重载,动态多态则是虚函数机制.虚函数水较深,先不讨论,今天我们来看一下函数重载.作用 ...
- 1.关于OSI七层模型和两主机传输过程
先回顾一下OSI七层模型有啥内容 (OSI模型与TCP/IP模型类似,这里只针对OSI模型展开) OSI参考模型为什么弃用呢?它的分层过于细致了,以至于使网络的体系结构变得复杂臃肿,有使用重叠的嫌疑, ...
- Postman --> YApi
初始 Postman,才知其如此强大,慢慢接触学习吧~ “Modern software is built on APIs,Postman helps you develop APIs faster” ...
- GVIM、VIM
全世界最好的编辑器VIM之Windows配置篇 Highlight all search pattern matches Top 10 things Vi user need to know abou ...
- Python asyncio 模块
Python 3.4 asyncio是Python 3.4版本引入的标准库,直接内置了对异步IO的支持. asyncio的编程模型就是一个消息循环.我们从asyncio模块中直接获取一个EventLo ...