Python pymysql对数据库的基础操作
示例数据库名demo,表名info
select * from info; 查看该表数据
+----+-------+--------+-----+---------------------+---------------------+
| id | name | gender | age | createTime | updateTime |
+----+-------+--------+-----+---------------------+---------------------+
| 1 | Miles | Male | 21 | 2019-12-24 10:10:41 | 2019-12-24 10:11:02 |
| 2 | Mary | Female | 15 | 2019-12-24 19:26:24 | 2019-12-24 19:26:24 |
| 3 | Marx | Male | 35 | 2019-12-24 19:39:19 | 2019-12-24 19:39:19 |
| 4 | Fox | Female | 8 | 2019-12-24 19:39:19 | 2019-12-24 19:39:19 |
+----+-------+--------+-----+---------------------+---------------------+
查询数据
获取查询结果的三种方法:
- fetchone() 获取查询结果中最早的一行数据,返回结果为一个元组,对应查询的字段,如果查询结果为空则返回None
- fetchall() 获取所有的查询结果,返回结果为一个大元组,大元组中每个元素为小元组,小元组就是每一行的数据,对应查询的字段,如果查询结果为空则返回一个空元组
- fetchmany() 和fetchall()类似,只不过要传入一个整数表示要获取多少行数据,从最早开始算,如果传入参数大于结果条数则获取所有结果,如果查询结果为空则返回空元组
import pymysql
# 连接数据库服务器,参数:IP地址,用户名,密码,要使用的数据库名称,编码格式
conn = pymysql.connect('服务器ip地址', 'mysql用户名', 'mysql密码', '数据库名', charset='utf8')
# 获得一个游标对象来操作数据库
cur = conn.cursor()
# 编写sql
sql = 'select name, gender, age from info;'
# 传入sql并执行
cur.execute(sql)
# 使用fetchone,fetchmany,fetchall三种方法之一获得查询的结果
result = cur.fetchall()
# 关闭游标和数据库连接
cur.close()
conn.close()
# 打印结果
print(result)
输出结果:
# fetchone()
('Miles', 'Male', 21)
# fetchall()
(('Miles', 'Male', 21), ('Mary', 'Female', 15), ('Marx', 'Male', 35), ('Fox', 'Female', 8))
# fetchmany(2)
(('Miles', 'Male', 21), ('Mary', 'Female', 15))
增删改
增删改操作不需要获得结果,但是要commit提交操作
import pymysql
# 连接数据库服务器,参数:IP地址,用户名,密码,要使用的数据库名称,编码格式
conn = pymysql.connect('服务器ip地址', 'mysql用户名', 'mysql密码', '数据库名', charset='utf8')
# 获得一个游标对象来操作数据库
cur = conn.cursor()
# 编写sql
sql = 'insert into info(name, gender, age) values("Demo", "Male", 10);' # 新增数据
# sql = 'delete from info where name="Miles";' # 删除数据
# sql = 'update info set name="Mark" where name="Marx";' # 修改数据
# 传入sql并执行
cur.execute(sql)
# 提交修改
conn.commit()
# 关闭游标和数据库连接
cur.close()
conn.close()
Python pymysql对数据库的基础操作的更多相关文章
- Python --链接MYSQL数据库与简单操作 含SSH链接
项目是软硬件结合,在缺少设备的情况,需要通过接口来模拟实现与设备的交互,其中就需要通过从数据库读取商品的ID信息 出于安全考虑 现在很多数据库都不允许通过直接访问,大多数是通过SSH SSH : 数 ...
- 安卓基础之Sqlite数据库最最基础操作
Sqlite数据库基础操作 摘要:在应用中新建一个数据库,并创建一个数据表写入数据,然后读取表中数据并展示. 主要逻辑: 1.通过继承SQLiteOpenHelper自定义类,定制数据库的表结构,初始 ...
- python下selenium模拟浏览器基础操作
1.安装及下载 selenium安装: pip install selenium 即可自动安装selenium geckodriver下载:https://github.com/mozilla/ge ...
- 数据库(mysql)基础操作
DDL(数据定义语言)------>建库,建表 DML(数据操作语言)------>对表中的记录操作增删改查 DQL(数据查询语言)------>对表中的查询操作 DCL(数据控制语 ...
- mysql数据库的基础操作
注 : 本文中注释因为方便写了# ,mysql中规范应为 -- 创建用户 通过root管理员权限可以创建各种用户,并为他们分配权限及可以操作的数据库. 语法:create user '用户名'@'ip ...
- Python连接MongoDB数据库并执行操作
原文:https://blog.51cto.com/1767340368/2092813 环境设置: [root@mongodb ~]# cat /etc/redhat-release CentOS ...
- SQL数据库的基础操作
一,认识SQL数据库 美国Microsoft公司推出的一种关系型数据库系统.SQLServer是一个可扩展的.高性能的.为分布式客户机/服务器计算所设计的数据库管理系统,实现了与WindowsNT的有 ...
- ADO对SQL Server 2008数据库的基础操作
最近在学习ADO与数据库的相关知识,现在我将自己学到的东西整理写出来,也算是对学习的一种复习. 这篇文章主要说明如何遍历某台机器上所有的数据库服务,遍历某个服务中所有的数据库,遍历数据库中的所有表以及 ...
- Mongodb数据库(linux)——基础操作
简介 MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统.它是非关系型数据库,但其结构与MySQL又很相似,mysql中的表格,在这里被称为集合,mysql表格内的数据是一 ...
随机推荐
- Linux设备驱动学习笔记
之前研究Linux设备驱动时做的零零散散的笔记,整理出来,方便以后复习. 1.1驱动程序的的角色 提供机制 例如:unix图形界面分为X服务器和窗口会话管理器 X服务器理解硬件及提供统一的接口给用户程 ...
- 判断当前环境是ios还是安卓
/** * @name 判断iOS */ export const isiOS = ()=>{ let u = navigator.userAgent; let iOs = !!u.match( ...
- Python实现PDF文件截取
python3截取PDF文件中的一部分. from PyPDF2 import PdfFileWriter, PdfFileReader # 开始页 start_page = 0 # 截止页 end_ ...
- fetch 写法
fetch("../students.json").then(function(response){ if(response.status!==200){ console.log( ...
- JavaScript 输出的四种方法
JavaScript 没有任何打印或者输出的函数. ㈠JavaScript 显示数据 ⑴使用 window.alert() 弹出警告框. ⑵使用 document.write() 方法将内容写到 HT ...
- DES加密 DESEncrypt
/// <summary> /// DES加密/解密类. /// </summary> public class DESEncrypt { public DESEncrypt( ...
- poj 3320 jessica's Reading PJroblem 尺取法 -map和set的使用
jessica's Reading PJroblem Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 9134 Accep ...
- unittest详解(六) 断言
我们在执行测试用例时,怎么来判断这条用例是否通过呢?唯一的办法就是拿实际结果和预期结果进行比较,如果一致用例就是通过的,否则用例就是失败的.在python中这种比较的方法就叫做断言,unittest框 ...
- Unity3D_(游戏)跳一跳超简单制作过程
跳一跳 工程文件界面 游戏界面 脚本 using DG.Tweening; using System.Collections; using System.Collections.Generic; us ...
- 分布式-网络通信-线程(socket)
package OIO; import java.io.IOException; import java.io.InputStream; import java.net.ServerSocket; i ...