python操作pymysql数据库
首先需要导入通过import pymysql导入数据库模块
已经创建好一个数据库test,数据库中有一个空表t,只有两个字段id int(5),name varchar(20)
import pymysql conn=pymysql.connect(host='127.0.0.1',port=3306,user='root',password='oldboy',db='test') #创建与数据库的连接对象,需要指明数据库所在主机ip、端口、登录用户名、登录密码、使用数据库
cursor=conn.cursor() #创建与数据库的交互对象
sql1="insert into t values (1,'Jack'), (2,'Bob'), (3,'Alice'),(4,'Jane')"
cursor.execute(sql1) #通过交互对象执行sql语句 conn.commit() #通过连接对象提交修改
cursor.close() #关闭交互对象
conn.close() #关闭连接对象
以上,conn=句为创建与数据库的连接对象,cursor=句为创建与数据库的交互对象
conn.commit()为提交修改即将修改记录到数据库中,cursor.close()和conn.close()为关闭交互对象和连接对象。
sql2="select * from t"
cursor.execute(sql2)
print(cursor.execute(sql2)) #结果为执行sql2语句影响的记录数
print(cursor.fetchone()) #取execute(sql2)执行结果的第一条记录
#print(cursor.fetchmany(2)) 取执行结果的前2条记录
#print(cursor.fetchall()) 取执行结果的所有记录
通过cursor.execute执行查询语句后,查询结果会放置到cursor中,可通过fetchone()、fetchmany()和fetchall()从cursor获取值,在取值的过程中,游标会自动地向后移动。
手动移动游标的位置,通过cursor.scroll(n,mode=[relative|absolute])实现。
sql2="select * from t"
cursor.execute(sql2)
print(cursor.fetchmany(2)) #((1, 'Jack'), (2, 'Bob'))
cursor.scroll(-1,mode='relative')
print(cursor.fetchone()) #(2, 'Bob')
cursor.scroll(3,mode='absolute')
print(cursor.fetchone()) #(4, 'Jane')
相对位置移动游标位置:cursor.scroll(-1,mode='relative'),使用mode='relative',前面的数据参数如果为负表示相对当前位置向前移动指定数量的游标,为正则表示相对当前位置向后移动指定数量的游标。
绝对位置移动游标位置:cursor.scroll(3,mode='absolute'),使用mode='absolute',前面的数据参数是正数,表示移动到的位置,0表示第一个,最大值为结果的长度-1,超出会报IndexError: out of range错误。
sql2="select * from t"
cursor.execute(sql2)
cursor.scroll(4,mode='absolute')
print(cursor.fetchone()) # raise IndexError("out of range")
#IndexError: out of range
python操作pymysql数据库的更多相关文章
- 使用python操作mysql数据库
这是我之前使用mysql时用到的一些库及开发的工具,这里记录下,也方便我查阅. python版本: 2.7.13 mysql版本: 5.5.36 几个python库 1.mysql-connector ...
- python 操作mysql数据库之模拟购物系统登录及购物
python 操作mysql数据库之模拟购物系统登录及购物,功能包含普通用户.管理员登录,查看商品.购买商品.添加商品,用户充值等. mysql 数据库shop 表结构创建如下: create TAB ...
- 【Python】使用python操作mysql数据库
这是我之前使用mysql时用到的一些库及开发的工具,这里记录下,也方便我查阅. python版本: 2.7.13 mysql版本: 5.5.36 几个python库 1.mysql-connector ...
- python接口自动化(三十八)-python操作mysql数据库(详解)
简介 现在的招聘要求对QA人员的要求越来越高,测试的一些基础知识就不必说了,来说测试知识以外的,会不会一门或者多门开发与语言,能不能读懂代码,会不会Linux,会不会搭建测试系统,会不会常用的数据库, ...
- Python操作MySQL数据库(步骤教程)
我们经常需要将大量数据保存起来以备后续使用,数据库是一个很好的解决方案.在众多数据库中,MySQL数据库算是入门比较简单.语法比较简单,同时也比较实用的一个.在这篇博客中,将以MySQL数据库为例,介 ...
- Python操作Oracle数据库:cx_Oracle
.caret, .dropup > .btn > .caret { border-top-color: #000 !important; } .label { border: 1px so ...
- python操作MySQL数据库报错问题解决
编写好Python操作数据库的脚本后,运行报错如下: 报错1:“AttributeError: 'NoneType' object has no attribute 'encoding'” 解决办法: ...
- python操作mysql数据库的相关操作实例
python操作mysql数据库的相关操作实例 # -*- coding: utf-8 -*- #python operate mysql database import MySQLdb #数据库名称 ...
- Python操作Access数据库
我们在这篇文章中公分了五个步骤详细分析了Python操作Access数据库的相关方法,希望可以给又需要的朋友们带来一些帮助. AD: Python编 程语言的出现,带给开发人员非常大的好处.我们可以利 ...
随机推荐
- ide phpStorm 配置PHP路径并本地执行PHP脚本
1.打开设置(File - Settings) 2. 3. 4.到需要执行脚本的文件处,右击 - Run 5.如果本地还未安装PHP,可以下载Xampp,并将PHP目录新增至系统环境变量Path处,重 ...
- Confluo: Distributed Monitoring and Diagnosis Stack for High-speed Networks
https://rise.cs.berkeley.edu/blog/confluo-millisecond-level-queries-on-large-scale-streaming-data/ht ...
- 微信小程序登录流程及解析用户openid session_key,获取用户信息
为优化用户体验,使用 wx.getUserInfo 接口直接弹出授权框的开发方式将逐步不再支持.从2018年4月30日开始,小程序与小游戏的体验版.开发版调用 wx.getUserInfo 接口,将无 ...
- 快递单号自动识别接口API-trackingmore
一.快递单号自动识别接口功能说明 (1)PC电脑端.移动APP或者自建网站集成物流查询功能时,只需要用户输入单号即可,不需要输入快递公司. (2)此接口可以配合Trackingmore的快递查询API ...
- SQL使用之关联更新、批量插入
使用场景 某个字段数据异常,利用另外一张表同步修改该表异常字段的数据; 关联更新 UPDATE tableName1 AS t1 LEFT JOIN tableName12 AS t2 ON t1.x ...
- MPLS的模拟学习过程
1.场景拓扑 使用小凡模拟器搭建了如下网络拓扑,使用的镜像为:c3640-jk9o3s-mz.122-15.T9.bin 相关的配置在下方 如果重复实验,需要清空设备的配置,知道路由器的密码,操作步骤 ...
- tensorflow training result
- Json字符串转map集合
第一步:在pom.xml中添加依赖; <dependency> <groupId>com.alibaba</groupId> <artifactId>f ...
- libpng warning: iCCP: known incorrect sRGB profile
参考 http://www.cocos2d-x.org/forums/6/topics/49093 解决 I got the following warnings in console when r ...
- FB面经Prepare: Friends Recommendation
有个getFriend() API, 让你推荐你的朋友的朋友做你的朋友,当然这个新朋友不能是你原来的老朋友 package fb; import java.util.*; public class R ...