mysql 深胡_数据存储之MySQL
包的导入:
@python3import pymysql
@python2import MySQLdb
基本应用
import pymysql
#建立连接
db = pymysql.connect(host=‘localhost’, port=3306, db=‘test’, user=‘root’, password=‘root’)
#使用cursor()方法 新建游标对象
cursor = db.cursor()
#使用execute()方法执行SQL语句
cursor.execute(“SELECT * FROM teacher”)
#使用fetchall()获取全部数据
data = cursor.fetchall()
#打印获取的的数据
print(data)
#关闭游标和数据库的连接
cursor.close()
详解
pymysql.connect中可接受的参数:
host:主机名或地址
user:用户名
password:密码简写passwd
database:指定数据库简写db
port:端口,默认3306
charset:指定字符编码
kw:关键字参数,用于字典.(*args是非关键字参数,用于元组,必须要在kwargs前)
cursor其实是调用了cursors模块下的Cursor的类,这个模块主要的作用就是用来和数据库交互的
数据库操作commit()方法:
在数据库里增、删、改的时候,必须要进行提交,否则插入的数据不生效。
execute():提供插入的数据
executemany():用来同时插入多条数据
execute()和executemany()都会返回受影响的行数:
res = cursor.executemany(sql,('jack',))
print(res)#返回受到影响行数
当表中有自增的主键的时候,可以使用print(cursor.lastrowid)来获取最后一次自增的ID
数据插入
# 数据库连接配置信息
config = {
"host": "localhost",
"port": 3306,
"user": "root",
"password": "root",
"database": "test"
}
db = pymysql.connect(**config) # 连接数据库
cursor = db.cursor() # 使用cursor()方法 新建游标对象
sql = "INSERT INTO teacher(name, sex, addr) VALUES(%s, %s, %s)" # 待执行的sql语句
# cursor.execute(sql) # 使用execute()方法执行SQL语句
data = [('wanglei', 'male', 'beijing'), ('mulasha', 'female', 'hangzhou')] #要是列表类型
cursor.executemany(sql, data) # cursor.excutemany()同时插入多条数据
db.commit() # 提交数据
cursor.close()
db.close()
数据库的查询:
fetchone():获取下一行数据,第一次为首行,第二次为第二行,.....
fetchall():获取所有行数据源,只获取一次。tpye(cursor.fetchall) == tuple
用fetchall获取所有行的数据,都被放在一个元组里面,
cursor = db.cursor(cursor=pymysql.cursors.DictCursor)
#在实例化的时候,将属性cursor设置为pymysql.cursors.DictCursor,
每一行都被生成一个字典放在列表里面,便于理解
fetchmany(4):获取下4行数据
scroll():
cursor.scroll(1,mode='relative') # 相对当前位置移动
cursor.scroll(2,mode='absolute') # 相对绝对位置移动
第一个值为移动的行数,整数为向下移动,负数为向上移动,mode指定了是相对当前位置移动,还是相对于首行移动
相当于seek(),要搭配查询函数使用,其本身并不能显示数据
mysql 深胡_数据存储之MySQL相关推荐
- mysql数据存储方式_数据存储在mysql的两种方式
数据存储在mysql的两种方式 发布时间:2020-05-12 16:16:25 来源:亿速云 阅读:250 作者:三月 下文主要给大家带来数据存储在mysql的两种方式,希望这些内容能够带给大家实际 ...
- mysql blob图片_显示存储在mysql blob中的图像
当我运行下面的代码时,它显示一个图像,该图像作为blob变量存储在mysql Db中.问题是我是否回声了其他任何东西,甚至像echo'--------'这样简单的东西:在我调用图像之前,图像将不会显示 ...
- 查询mysql索引信息_数据查询优化之mysql索引
为什么要建立索引: 索引用于快速找出在某个列中有一特定值的行.不使用索引,MySQL必须从第1条记录开始然后读完整个表直到找出相关的行,还需要考虑每次读入数据页的IO开销.而如果采取索引,则可以根据索 ...
- 猫眼电影票房爬取到MySQL中_猫眼电影爬取(一):requests+正则,并将数据存储到mysql数据库...
前面讲了如何通过pymysql操作数据库,这次写一个爬虫来提取信息,并将数据存储到mysql数据库 1.爬取目标 爬取猫眼电影TOP100榜单 要提取的信息包括:电影排名.电影名称.上映时间.分数 2 ...
- 小猪的Python学习之旅 —— 20.抓取Gank.io所有数据存储到MySQL中
小猪的Python学习之旅 -- 20.抓取Gank.io所有数据存储到MySQL中 标签:Python 一句话概括本文: 内容较多,建议先mark后看,讲解了一波MySQL安装,基本操作,语法速成, ...
- 用sqoop把hdfs数据存储到mysql报错,Job job_1566707990804_0002 failed with state FAILED due to: Tas k failed
用sqoop把hdfs数据存储到mysql数据库,报错 Job job_1566707990804_0002 failed with state FAILED due to: Tas k failed ...
- 用户画像 | 标签数据存储之MySQL真实应用
本文已收录github:https://github.com/BigDataScholar/TheKingOfBigData,里面有大数据高频考点,Java一线大厂面试题资源,上百本免费电子书籍,作者 ...
- 服务端指南 数据存储篇 | MySQL(03) 如何设计索引
改善性能最好的方式,就是通过数据库中合理地使用索引,换句话说,索引是提高 MySQL 数据库查询性能的主要手段.在下面的章节中,介绍了索引类型.强制索引.全文索引. 原文地址:服务端指南 数据存储篇 ...
- 《Python网络爬虫——从入门到实践》第六章将数据存储至MySQL数据库的学习心得与总结(出错与纠正方法)
<Python网络爬虫--从入门到实践>第六章将数据存储至MySQL数据库的学习心得与总结(出错与纠正方法) 作为刚开始入门python的小白,对大数据,网络爬虫比较感兴趣.完全是自我修炼 ...
最新文章
- 人人都能学会的python编程教程3:字符串和编码
- python中元组tuple官方使用手册
- LEDNET 实时分割
- POJ-2065 SETI 高斯消元,扩展GCD
- 程序员面试题精选100题(17)-把字符串转换成整数[算法]
- 三言两语说说进程调度
- des vue 加密解密_vue DES 加密
- 其实Go 1.17 就支持泛型了,具体该怎么用呢?
- Eclipse build launcher 3具体步骤
- golang redis 队列删除图片
- Git 报错:error: The requested URL returned error: 401 Unauthorized while accessing
- 转载: SCCM 的昨天,今天与明天——潘正恺 (Kenneth Pan) 专访
- JS自定义表单提交处理方案
- 记一次去掉中间的某次merge代码
- java外卖系统源码_java外卖订餐系统小项目
- Eigen学习总结1
- 推荐一个软件分享资源站
- 未来的不确定性到底是好是坏
- 中文分词:原理及分词算法
- TemplateBinding和Binding的区别
热门文章
- springboot系列(三) 启动类中关键注解作用解析
- 【C#】wpf自定义calendar日期选择控件的样式
- 中国即时通信用户6.42亿 企业市场竞争将更激烈
- Ojbect-C NSArray和NSMutableArray数组的使用 有关API查询
- PuTTY/PSCP、PSFTP介绍及使用
- 广电+央视能否有力量横扫运营商+互联网?
- Spring Cloud Eureka 源码分析(一) 服务端启动过程
- 1键将 Python2 代码自动转化为 Python3
- 1.8 centos7网络排错
- 饿了么合并百度外卖,ThinkSNS:产品上线要趁早