当前位置:主页 > python教程 > Python pymysql使用

一文带你了解Python中pymysql的使用

发布:2023-04-01 18:00:02 59


本站收集了一篇相关的编程文章,网友聂乐池根据主题投稿了本篇教程内容,涉及到Python、pymysql使用、Python、pymysql、Python pymysql使用相关内容,已被666网友关注,相关难点技巧可以阅读下方的电子资料。

Python pymysql使用

前言

首先使用python很大一部分人是用于数据分析或者是开发,而数据来源一般都是存储在数据库中。作为python怎么能不会从mysql里面获取到数据呢。而pymysql就是联通mysql实现python窗口与mysql数据库交互的库,十分方便操作。此篇文章将详细说明如何掌握并使用该库。mysql库官方文档:PyMySQL

一、pymysql用途

pymysql是可用于[连接mysql]数据库,且能够提供mysql与python窗口来交互创立通道的工具库。可以通过创建引擎,建立游标直接通过python编程实现mysql数据库操作。在开发和分析可形成线性脚本。是广泛使用的库。

二、下载

1.下载依赖

首先要安装mysql库的话要提前加载该库的依赖:

ython – one of the following:

  • CPython >= 3.6
  • Latest PyPy 3

MySQL Server – one of the following:

  • MySQL >= 5.6
  • MariaDB >= 10.0

python版本3.6就可,mysql版本需5.6以上。

2.下载方式

打开cmd,在菜单打入cmd即可进入黑框命令提示符:

输入:

pip install PyMySQL

若有anaconda直接在Enviroment上搜索pymysql:

下载完即可使用。

三、使用

这里使用Jupyter展示使用:

首先先导入库:

import pymysql

 1.连接Mysql数据库

在连接数据库之前,你数据库里面肯定要有东西,不然会报错。可以先在数据库中创建一个数据库,创建表格并写入数据。

create database mysql
use mysql
create table metric_valuestest 

数据用插入得到方式或是在图形界面工具,如Navicat上插入都可:

已有数据库记得打开数据库:

net start mysql

官方文档连接格式:

# Connect to the database
connection = pymysql.connect(host='localhost',  user='user',  password='passwd',  database='db',  port = '3306'  charset='utf8mb4',  cursorclass=pymysql.cursors.DictCursor)

参数说明:

  • host:为本机IP地址,当然hosts文件里面localhost就是本机ip地址127.0.0.1所以不需要修改。
  • user:使用者的名字,可写可不写。一般为admin管理员。
  • password:进入你数据库的密码。创建mysql的时候需要设定密码,就是那个密码。
  • database:使用的数据库名字
  • port:端口号,一般为3306
  • charset:编码格式,一般为utf8.
  • cursorclass:[数据库连接池]返回结果类型设置。

运行测试连接是否成功。成功便可进行下一步

2.创建游标对象

连接好了数据库,我们需要创建一个游标用于模拟我们使用mysql的行为。创建游标后在没关闭数据库之前都可以正常使用且可以不限次数使用。

# 使用 cursor() 方法创建一个游标对象 cursor                      
cursor = conn.cursor()

 3.执行函数

创建游标后,游标cursor自带execute()函数可以执行SQL语句,成功则返回结果:

如我们想要显示所有的数据库:

sql='show databases'
cursor.execute(sql)

该语句执行成果后会返回语句数量

想要具体看到执行结果可以添加fetchall()函数:

sql='show databases'
response1=cursor.execute(sql)
response2=cursor.fetchall()
response2

4.获取查询结果集的方法

当使用游标cursor.execute(sql)方法查询数据执行成功后,我们可以通过后缀函数获取查询的结果集:

其中max_stmt_length= 1024000。 所有的增删改查都可以以字符串的形式传入sql,再有execute传入sql进行操作执行。

Connection类提供了三个方法: begin 开始事务, commit 提交事务, rollback 回滚事务,如果通过 sql 语句对数据库中的数据进行了修改, 则需要提交事务。

database.commit()

rollback()为回退到上一步操作,若发生其他错误带来不可预知的错误,可以与try except联合起来一起使用,返回到语句没有执行的状态。

主要使用方式:结合try except捕获异常,将事务进行rollback回滚。

try:
     db.commit()
except Exception as e:
     db.rollback()

关闭有close()方法,在程序结束时需要建立的连接即建立的游标资源释放掉,避免资源的浪费。

到此这篇关于一文带你了解Python中pymysql的使用的文章就介绍到这了,更多相关Python pymysql使用内容请搜索码农之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持码农之家!


参考资料

相关文章

  • Python办公自动化SFTP详解

    Python办公自动化SFTP详解

    发布:2022-09-12

    为网友们分享了关于Python的教程,这篇文章主要介绍了Python办公自动化SFTP详解,sftp和ftp的区别在安全通道,使用的协议,链接方式,安全性等方面都有不同,更多相关内容需要的小伙伴可以参考一下


  • 基于Python编写一个刷题练习系统

    发布:2023-04-01

    这篇文章主要为大家详细介绍了如何基于Python语言编写一个简单的刷题练习系统,文中的示例代码讲解详细,感兴趣的小伙伴可以了解一下


  • python模拟菜刀反弹shell绕过限制

    发布:2022-10-10

    给大家整理一篇关于python的教程,这篇文章主要介绍了利用python模拟菜刀反弹shell绕过限制,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下


  • Python装饰器使用方法全面梳理

    发布:2023-03-13

    这篇文章主要介绍了Python @property装饰器的用法,在Python中,可以通过@property装饰器将一个方法转换为属性,从而实现用于计算的属性,下面文章围绕主题展开更多相关详情,感兴趣的小伙伴可以参考一下


  • 使用Python脚本zabbix自定义key监控oracle连接状态

    发布:2022-04-20

    这篇文章主要介绍了使用Python脚本zabbix自定义key监控oracle连接状态,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下


  • Python正则表达式匹配反斜杠问题解析

    发布:2020-04-29

    这篇文章主要介绍了Python正则表达式匹配反斜杠'\'问题 ,很多朋友在使用python 正则式的过程中,经常被这个问题困扰,今天小编通过代码给大家详细介绍,需要的朋友可以参考下


  • Python实现针对给定字符串寻找最长非重复子串

    Python实现针对给定字符串寻找最长非重复子串

    发布:2022-09-23

    为网友们分享了关于Python的教程,这篇文章主要介绍了Python实现针对给定字符串寻找最长非重复子串的方法,涉及Python针对字符串的遍历、排序、计算等相关操作技巧,需要的朋友可以参考下


  • 详解Python中命令行参数argparse的常用命令

    发布:2023-04-26

    这篇文章主要为大家详细介绍了Python中命令行参数argparse的一些常用命令,文中的示例代码讲解详细,具有一定的学习价值,需要的可以了解一下


网友讨论