PyMySQL库的使用方法
过程和步骤:
安装 PyMySQL
首先,需要使用 pip 安装 PyMySQL 库:
pip install pymysql
连接数据库
使用 PyMySQL.connect() 方法可以建立到 MySQL 数据库的连接:
import pymysql# 配置数据库连接参数
config = {'host': 'localhost', # 数据库服务器地址'port': 3306, # 数据库服务器端口'user': 'your_username', # 数据库用户名'password': 'your_password', # 数据库密码'database': 'your_database', # 要操作的数据库名'charset': 'utf8mb4' # 使用的字符集
}# 建立连接
connection = pymysql.connect(**config)
创建游标对象
游标(Cursor)用于执行 SQL 语句和获取查询结果:
# 创建游标对象
cursor = connection.cursor()
执行 SQL 语句
使用游标的 execute() 方法可以执行 SQL 语句:
# 执行查询语句
cursor.execute("SELECT * FROM your_table")# 获取所有查询结果
results = cursor.fetchall()
for row in results:print(row)# 执行非查询语句(如 INSERT、UPDATE、DELETE)
cursor.execute("INSERT INTO your_table (column1, column2) VALUES (value1, value2)")
提交事务
对于非查询类的 SQL 语句,需要提交事务以确保更改生效:
connection.commit()
错误处理
使用 try...except 语句来处理可能发生的异常:
try:# 尝试执行一些操作pass
except pymysql.MySQLError as e:print(e)connection.rollback() # 发生错误时回滚事务
finally:cursor.close() # 关闭游标connection.close() # 关闭连接
关闭连接
操作完成后,应关闭游标和数据库连接:
cursor.close()
connection.close()
示例代码
下面是一个使用 PyMySQL 执行查询和插入操作的完整示例:
import pymysql# 配置数据库连接参数
config = {'host': 'localhost','port': 3306,'user': 'your_username','password': 'your_password','database': 'your_database','charset': 'utf8mb4'
}# 建立连接
connection = pymysql.connect(**config)try:# 创建游标对象with connection.cursor() as cursor:# 执行查询cursor.execute("SELECT * FROM your_table")print("Query results:", cursor.fetchall())# 执行插入操作cursor.execute("INSERT INTO your_table (column1, column2) VALUES (%s, %s)", ('value1', 'value2'))# 提交事务connection.commit()except pymysql.MySQLError as e:print("Error: ", e)connection.rollback()
finally:# 关闭连接connection.close()
请注意,上述示例中的 'your_username', 'your_password', 'your_database' 和 'your_table' 需要替换为实际的数据库登录信息和表名。
相关文章:
PyMySQL库的使用方法
过程和步骤: 安装 PyMySQL 首先,需要使用 pip 安装 PyMySQL 库: pip install pymysql连接数据库 使用 PyMySQL.connect() 方法可以建立到 MySQL 数据库的连接: import pymysql# 配置数据库连接参数 config {host: localhost…...
iOS 创建一个私有的 CocoaPods 库
创建一个私有的 CocoaPods 库(pod)涉及几个步骤,包括设置私有的 Git 仓库、创建 Podspec 文件、发布到私有仓库等等。以下是详细步骤: 设置私有 Git 仓库 首先,在 GitHub、GitLab 或 Bitbucket 上创建一个新的私有仓库…...
Linux_实现UDP网络通信
目录 1、实现服务器的逻辑 1.1 socket 1.2 bind 1.3 recvfrom 1.4 sendto 1.5 服务器代码 2、实现客户端的逻辑 2.1 客户端代码 3、实现通信 结语 前言: 在Linux下,实现传输层协议为UDP的套接字进行网络通信,网络层协议为IPv4&am…...
C# 代理模式
栏目总目录 概念 代理模式是一种结构型设计模式,它为其他对象提供一种代理以控制对这个对象的访问。在代理模式中,我们创建一个具有现有对象(称为“真实对象”或“被代理对象”)相同功能的代理对象。代理对象可以在客户端和目标对…...
【1】Python机器学习之基础概念
1、什么是机器学习 最早的机器学习应用——垃圾邮件分辨 传统的计算机解决问题思路: 编写规则,定义“垃圾邮件”,让计算机执行对于很多问题,规则很难定义规则不断变化 机器学习在图像识别领域的重要应用: 人脸识别…...
HashMap源码解析
目录 一:put方法流程 二:get方法 三:扩容机制 一:put方法流程 public V put(K key, V value) {return putVal(hash(key), key, value, false, true); }final V putVal(int hash, K key, V value, boolean onlyIfAbsent,boolean evict) {No…...
[Javascript】前端面试基础3【每日学习并更新10】
Web开发中会话跟踪的方法有那些 cookiesessionurl重写隐藏inputip地址 JS基本数据类型 String:用于表示文本数据。Number:用于表示数值,包括整数和浮点数。BigInt:用于表示任意精度的整数。Boolean:用于表示逻辑值…...
C++自定义字典树结构
代码 #include <iostream> using namespace std;class TrieNode { public:char data;TrieNode* children[26];bool isTerminal;TrieNode(char ch){data ch;for (int i 0; i < 26; i){children[i] NULL;}isTerminal false;} }; class Trie { public:TrieNode* ro…...
dockerfile部署wordpress
1.将容器直接提交成镜像 [rootlocalhost ~]# docker commit 8ecc7f6b9c12 nginx:1.1 sha256:9a2bb94ba6d8d952527df616febf3fbc8f842b3b9e28b7011b50c743cd7b233b [rootlocalhost ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE nginx …...
CSS(二)——CSS 背景
CSS 背景 CSS 背景属性用于定义HTML元素的背景。 CSS 背景属性 Property描述background简写属性,作用是将背景属性设置在一个声明中。background-attachment背景图像是否固定或者随着页面的其余部分滚动。background-color设置元素的背景颜色。background-image把…...
开机出现grub无法进入系统_电脑开机出现grub解决方法
最近有小伙伴问我电脑开机出现grub无法进入系统怎么回事?电脑开机出grub的情况有很多,电脑上安装了Linux和Win10双系统,但是由于格式化删除了Linux之后,结果win10开机了之后,直接显示grub>,无法…...
uboot 设置bootargs配置内核网络挂载根文件系统
uboot 设置bootargs配置内核网络挂载根文件系统 uboot设置bootargs env set bootargs "mem256M consolettyAMA0,115200 root/dev/nfs init/linuxrc nfsrootnfs主机地址:nfs路径/busybox/rootfs_glibc_arm64,prototcp rw nfsvers3 rootwait ip板子地址:nfs主机地址:网关:2…...
Vue3+.NET6前后端分离式管理后台实战(三十一)
1,Vue3.NET6前后端分离式管理后台实战(三十一)...
22集 如何minimax密钥和groupid-《MCU嵌入式AI开发笔记》
22集 如何获取minimax密钥和groupid-《MCU嵌入式AI开发笔记》 minimax密钥获取 https://www.minimaxi.com/platform 进入minimax网站,注册登录后,进入“账户管理”, 然后再点击“接口密钥”,然后再点击“创建新的密钥”。 之…...
决策树的概念
决策树的概念 决策树是一种监督学习算法,主要用于分类任务。它通过构建一棵树结构模型来进行预测,其中每个内部节点表示一个特征属性上的判断条件,每条边代表一个判断结果对应的分支,而叶节点则代表最终的类别标签。 应用领域 …...
C++《类和对象》(中)
一、 类的默认成员函数介绍二、构造函数 构造函数名与类同名内置类型与自定义类型析构函数拷贝构造函数 C《类和对象》(中) 一、 类的默认成员函数介绍 默认成员函数就是⽤⼾没有显式实现,编译器会⾃动⽣成的成员函数称为默认成员函数。 那么我们主要学习的是1&…...
SpringBoot中JSR303校验
JSR是 Java EE 的一种标准,用于基于注解的对象数据验证。在Spring Boot应用中,你可以通过添加注解直接在POJO类中声明验证规则。这样可以确保在使用这些对象进行操作之前,它们满足业务规则。个人认为非常有用的,因为它减少了代码中…...
图像数据增强方法概述
图像数据增强方法概述 1. 什么是图像数据增强技术?2. 图像数据增强技术分类2.1 几何变换Python 示例代码 2.2 颜色变换2.3 噪声添加 3. 参考文献 1. 什么是图像数据增强技术? 基础概念:图像增强技术是计算机视觉和图像处理领域中的一个关键技术,主要用…...
【学习笔记】无人机系统(UAS)的连接、识别和跟踪(五)-无人机跟踪
目录 引言 5.3 无人机跟踪 5.3.1 无人机跟踪模型 5.3.2 无人机位置报告流程 5.3.3 无人机存在监测流程 引言 3GPP TS 23.256 技术规范,主要定义了3GPP系统对无人机(UAV)的连接性、身份识别、跟踪及A2X(Aircraft-to-Everyth…...
分享从零开始学习网络设备配置--任务6.1 实现计算机的安全接入
项目描述 随着网络技术的发展和应用范围的不断扩大,网络已经成为人们日常生活中必不可少的一部分。园区网作为给终端用户提供网络接入和基础服务的应用环境,其存在的网络安全隐患不断显现出来,如非人为的或自然力造成的故障、事故;…...
2026长沙GEO优化公司权威实测:基于稳定性与转化效率的TOP5服务商深度推荐
2026长沙GEO优化公司权威实测:基于稳定性与转化效率的TOP5服务商深度推荐2026年,生成式AI搜索已深度重塑商业决策与品牌获客的路径。在全国GEO(生成式引擎优化)的版图中,长沙凭借活跃的数字经济生态与扎实的产业基础&a…...
dy自动化采集数据滑动验证码绕过实战指南
1. 理解dy滑动验证码的运作机制 当你用脚本快速刷dy视频时,经常会遇到那个烦人的滑块验证码。这其实是平台防止机器人滥用的重要防线。我刚开始做自动化采集时,每次遇到这个滑块都会头皮发麻——程序卡住不动,数据采集被迫中断。后来经过反复…...
别再只用NodePort了!手把手教你用MetalLB在本地K8s集群实现LoadBalancer服务暴露
突破本地Kubernetes限制:MetalLB实现LoadBalancer全实战指南 当你第一次在本地Minikube或自建Kubernetes集群中尝试创建LoadBalancer类型的Service时,那个永恒的"Pending"状态是否让你感到困惑?云厂商提供的LoadBalancer服务在本地…...
COMSOL多场耦合地应力平衡开挖与衬砌支护案例:带衬砌与钢衬支护的实践研究
COMSOL 地应力平衡后开挖及衬砌支护案例(带衬砌、钢衬)隧道开挖模拟最头疼的就是初始地应力场的平衡问题。前些天用COMSOL折腾了个带衬砌支护的案例,今天把关键步骤拆开说说。咱们直接从地应力平衡开始,到开挖后钢衬安装一气呵成。…...
2026届最火的五大降AI率助手推荐
Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 减低AIGC检测率要从多方面入手,首先,调整句式结构,避开过…...
Gitee:中国DevOps生态的数字化转型引擎
本土化创新重塑开发者体验在中国数字经济蓬勃发展的背景下,Gitee作为国产代码托管平台的代表,正在重新定义中国开发者的工作方式。不同于国际平台在中国市场的适应性局限,Gitee通过深度理解本土开发者的工作习惯和业务场景,构建了…...
4大技术引擎破解魔兽争霸3现代适配难题
4大技术引擎破解魔兽争霸3现代适配难题 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 当经典RTS游戏遇上现代硬件环境,总会面临兼容性的严…...
Qwen3.5-2B保姆级教程:20亿参数模型端侧部署与图文对话实操
Qwen3.5-2B保姆级教程:20亿参数模型端侧部署与图文对话实操 1. 模型简介 Qwen3.5-2B是阿里云推出的轻量化多模态基础模型,属于Qwen3.5系列的小参数版本(20亿参数)。这个模型专为低功耗、低门槛部署场景设计,特别适合在端侧和边缘设备上运行…...
从仿真到实战:如何将你的MATLAB机械臂轨迹规划代码(3-5-3插值)部署到ROS或Simulink?
从仿真到实战:MATLAB机械臂轨迹规划代码的ROS与Simulink部署指南 当你完成了MATLAB中机械臂轨迹规划的算法开发,看着屏幕上平滑的位置、速度和加速度曲线,接下来面临的核心问题是如何将这些数据转化为真实机械臂的动作。本文将深入探讨两种主…...
安全测试入门:开发与测试都需要知道的OWASP TOP 10
为何OWASP TOP 10是测试人员的必修课?在数字化浪潮席卷全球的今天,软件已深度融入商业运营与社会生活。每一次点击、每一次数据交换的背后,都潜藏着安全风险。对于软件测试从业者而言,功能与性能测试仅是基础,安全测试…...
