iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >Python中PyMySQL的基本操作
  • 537
分享到

Python中PyMySQL的基本操作

2024-04-02 19:04:59 537人浏览 泡泡鱼
摘要

目录简介1、查找数据2、添加数据3、删除数据4、更改数据简介 PyMysql 是在 python3.x 版本中用于连接 mysql 服务器的一个库 PyMysql 遵循 python 数据库 api v2.0 规范,并包

简介

PyMysql 是在 python3.x 版本中用于连接 mysql 服务器的一个库

PyMysql 遵循 python 数据库 api v2.0 规范,并包含了 pure-Python MySQL 客户端库。

如果还未安装,我们可以使用以下命令安装最新版的 PyMySQL:

pip install PyMySQL

pymysql GitHub地址

下面看下PyMySQL的基本操作,

1、查找数据

import pymysql
# 简单的查找
# 连接数据库
	conn = pymysql.connect(host='127.0.0.1', user='root', passWord='******', database='authoritydb')
# cursor=pymysql.cursors.DictCursor,是为了将数据作为一个字典返回
	cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)
	sql = 'select id,name from userinfo where id = %s'
# row返回获取到数据的行数
# 不能将查询的某个表作为一个参数传入到SQL语句中,否则会报错
# eg:sql = 'select id,name from %s'
# eg:row = cursor.excute(sql, 'userinfo') # 备注:userinfo是一个表名
# 像上面这样做就会报SQL语法错误,正确做法如下:
	row = cursor.execute(sql, 1)
# fetchall()(获取所有的数据),fetchmany(size)(size指定获取多少条数据),fetchone()(获取一条数据)
	result = cursor.fetchall()
	cursor.close()
	conn.close()
# 最后打印获取到的数据
	print(result)

# 补充
# 传入多个数据时
	sql = 'select id,name from userinfo where id>=%s and id<=%s'
	row = cursor.executemany(sql, [(1, 3)])
# 以字典方式传值
	sql = 'select id,name from userinfo where id>=%(id)s or name=%(name)s'
	rows = cursor.execute(sql, {'id': id, 'name': name})
	
# -------------------------------------------------
	import pymysql
# 复杂一点的查找,与MySQL的语句格式一样
	connect = pymysql.connect(host='localhost', user='root', password='****', database='authoritydb')
	cursor = connect.cursor(cursor=pymysql.cursors.DictCursor)
	username = input('username: ')
	sql = 'select A.name,authorityName from (select name,aid from userauth left join userinfo on' \
	      ' uid=userinfo.id where name=%s) as A left join authority on authority.id=A.aid'
	row = cursor.execute(sql, username)
	result = cursor.fetchmany(row)
	cursor.close()
	connect.close()
	print(result)

# 调用函数
import pymysql
# 函数已经在mysql数据库中创建,这里只调用
# 函数的创建请访问后面的网址(https://blog.csdn.net/qq_43102443/article/details/107349451).
# in (指在创建函数时指定的参数只能输入)
	connect = pymysql.connect(host='localhost', user='root', password='******', database='schooldb')
	cursor = connect.cursor(cursor=pymysql.cursors.DictCursor)
	r = cursor.callproc('p2', (10, 5))
	result_1 = cursor.fetchall()
# 这个函数返回两个结果集
# 换到另一个结果集,在进行获取值
	cursor.nextset()
	result_2 = cursor.fetchall()
	cursor.close()
	connect.close()
	
	print('学生:', result_1, '\n老师:', result_2)

# out (指在创建函数时指定的参数只能输出)
	connect = pymysql.connect(host='localhost', user='root', password='*****', database='schooldb')
	cursor = connect.cursor(cursor=pymysql.cursors.DictCursor)
# 调用函数
	r = cursor.callproc('p3', (8, 0))
	result_1 = cursor.fetchall()
# 查询函数的第二个参数的值(从零开始计数)
	cursor.execute('select @_p3_1')
	result_2 = cursor.fetchall()
	cursor.close()
	connect.close()
	
	print(result_1, '\n', result_2)

# inout(指在创建函数时指定的参数既能输入,又能输出)
	connect = pymysql.connect(host='localhost', user='root', password='l@l19981019', database='schooldb')
	cursor = connect.cursor(cursor=pymysql.cursors.DictCursor)
	r = cursor.callproc('p4', (10, 0, 2))
	result_1 = cursor.fetchall()
	cursor.execute('select @_p4_1,@_p4_2')
	result_2 = cursor.fetchall()
	cursor.close()
	connect.close()
	print(result_1, '\n', result_2)

2、添加数据

用PyMySQL进行数据的增、删、改时,记得最后要commit()进行提交,这样才能保存到数据库,否则不能

	connect = pymysql.Connect(host='localhost', user='root', password='******', database='schooldb')
	cursor = connect.cursor(cursor=pymysql.cursors.DictCursor)
	student_id, course_id, number = input('student_id,course_id,number[eg:1 2 43]: ').split()
	sql = 'insert into score(student_id,course_id,number) values(%(student_id)s,%(course_id)s,%(number)s)'
	rows = cursor.execute(sql,{'student_id': student_id, 'course_id': course_id, 'number': number})
# 这里一定要提交
	cursor.commit()
	cursor.close()
	connect.close()

3、删除数据

connect = pymysql.Connect(host='localhost', user='root', password='******', database='schooldb')
	cursor = connect.cursor(cursor=pymysql.cursors.DictCursor)
	student_id = input('student_id: ')
	sql = 'delete from student where sid=%s'
	rows = cursor.execute(sql, student_id)
# 这里一定要提交
	cursor.commit()
	cursor.close()
	connect.close()

4、更改数据

connect = pymysql.Connect(host='localhost', user='root', password='******', database='schooldb')
	cursor = connect.cursor(cursor=pymysql.cursors.DictCursor)
	id, name = input('id, name: ').split()
	sql = "update userinfo set name=%s where id=%s"
	rows = cursor.executemany(sql, [(name, id)])
# 这里一定要提交
	cursor.commit()
	cursor.close()
	connect.close()

到此这篇关于PyMySQL的基本操作的文章就介绍到这了,更多相关PyMySQL操作内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

您可能感兴趣的文档:

--结束END--

本文标题: Python中PyMySQL的基本操作

本文链接: https://www.lsjlt.com/news/117066.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python中PyMySQL的基本操作
    目录简介1、查找数据2、添加数据3、删除数据4、更改数据简介 Pymysql 是在 python3.x 版本中用于连接 MySQL 服务器的一个库 PyMySQL 遵循 Python 数据库 API v2.0 规范,并包...
    99+
    2024-04-02
  • Python 操作Mysql(PyMysql)
    Python 操作 Mysql 常用方式: PyMysql:纯 Python 语言编写的 Mysql 操作客户端,安装方便,支持 Python3。SQLAlchemy:是一个非常强大的 ORM 框架,...
    99+
    2023-09-09
    Python 操作Mysql Python使用PyMysql
  • Python操作SQLLite(基本操作
      SQLite 是一个软件库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。SQLite 是在世界上最广泛部署的 SQL 数据库引擎。SQLite 源代码不受版权限制。 Python SQLITE数据库是一款非常...
    99+
    2023-01-31
    操作 Python SQLLite
  • Python中列表的基本操作
    本篇内容主要讲解“Python中列表的基本操作”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python中列表的基本操作”吧!如何创建列表?列表是最常用的Python数据类型,它可以作为一个方括...
    99+
    2023-06-02
  • 【Python】Python操作MySQL详解——PyMySQL
    Python操作MySQL详解——PyMySQL 一,Python操作数据库简介二,Python操作MySQL——PyMySQL(一)PyMySQL模块简介(二)PyMySQL使用(三)SQL...
    99+
    2023-09-23
    python mysql sql
  • Python pymysql操作MySQL详细
    目录1、使用1.1 简单使用1.2 封装工具类1、使用 1.1 简单使用 import pymysql # 创建连接 con = pymysql.connect( ...
    99+
    2024-04-02
  • Python + pymysql 之 MySQL 查询操作
    在MySQL中构建一个测试表,如下: 查询单条数据 # -*- coding: UTF-8 -*-import pymysqldef mysql_query(): """ MySQL查询 :return: """ ...
    99+
    2023-10-09
    python mysql pymysql
  • python基本操作(四)
    为什么交互 计算机取代人类,解放劳动力 如何交互 print('-'*100) input('请输入你的姓名:') print(""100) Python2和Python3的交互(熟悉) name = raw_input('请输入你的姓...
    99+
    2023-01-31
    操作 python
  • python基本操作(五)
    if 条件: 代码1 代码2 代码3 代码块(同一缩进级别的代码,例如代码1、代码2和代码3是相同缩进的代码,这三个代码组合在一起就是一个代码块,相同缩进的代码会自上而下的运行) cls ='humale' gender = 'fema...
    99+
    2023-01-31
    操作 python
  • 封装一个python的pymysql操作类
    最近使用pymysql写脚本的情况越来越多了,刚好整理,简单封装一个pymysql的操作类 import pymysql class MysqlDB: def __init__( self,...
    99+
    2022-12-25
    PyMySQL的使用方法 pymysql使用教程 pymysql模块的使用
  • Python中对基本文件操作
    1.文件的作用 保存数据放在磁盘中 2.打开文件 f=open(‘文件’,‘w’)或者f=open(‘文件’,‘r’) 3.文件操作 3.1 写数据(write) 如果文件不存在那么创建,如果存在那...
    99+
    2023-08-31
    python 数学建模 开发语言
  • python对kafka的基本操作
    from kafka import KafkaProducerfrom kafka import KafkaConsumerfrom kafka.structs import TopicPartitionimport time boots...
    99+
    2023-01-31
    操作 python kafka
  • python中NumPy的安装与基本操作
    目录Numpy是什么NumPy的安装多维数组创建多维数组多维数组的常用属性多维数组的基本操作数组的算术运算数组的自身运算随机数组索引、切片、迭代总结Numpy是什么 很简单,Nump...
    99+
    2024-04-02
  • Python中列表的基本操作汇总
    目录1、列表的创建与遍历2、添加元素2.1、append()方法2.2、extend()方法2.3、insert()方法3、删除元素3.1、del命令3.2、pop()方法3.3、r...
    99+
    2024-04-02
  • python 字典基本操作
    字典的基本构成---键+:+键值+{},如a={'a':1,'b':2,'c':3}字典的键是不可以改变的,所以定义的时候键应该是数字,字符,元组等不可变值,不能用列表如果想要修改某一键值,直接修改即可---a['c']=4如果想要添加一个...
    99+
    2023-01-31
    字典 操作 python
  • pymysql的安装及操作
    1、pymysql的安装 1.1 conda环境解释器在线安装 以管理员身份运行终端或者使用Anaconda Powershell Prompt并以管理员身份运行 conda install -...
    99+
    2023-09-09
    python 数据库 开发语言 django flask
  • python怎么操作pymysql数据库
    本篇内容主要讲解“python怎么操作pymysql数据库”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python怎么操作pymysql数据库”吧!一、安装pip install&n...
    99+
    2023-06-30
  • Python数据库操作 ---- pymysql教学
    文章目录 前提准备连接数据库创建数据库创建数据表、插入数据查询数据更新数据删除数据实战应用总结 前提准备 安装mysql 在使用pymysql的前提就是又一个mysql数据库,这个数据库可以是本地数据库也可以是远程的数据...
    99+
    2023-08-18
    数据库 mysql sql
  • Python基于pymysql的数据库操作类的安装运行过程
    这期内容当中小编将会给大家带来有关Python基于pymysql的数据库操作类的安装运行过程,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。 一...
    99+
    2024-04-02
  • 如何封装一个python的pymysql操作类
    这篇“如何封装一个python的pymysql操作类”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“如何封装一个python的...
    99+
    2023-07-04
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作