Python连接MySQL数据库操作指南

       Python是一种非常流行的编程语言,它可以连接和操作多种类型的数据库。其中,MySQL是一种广泛使用的关系型数据库管理系统,它可以存储大规模数据,并支持高并发访问。在本文中,我们将介绍如何使用Python连接和操作MySQL数据库。

安装MySQL驱动

在使用Python连接MySQL数据库之前,需要先安装MySQL驱动。MySQL官方提供了一个Python驱动程序,叫做mysql-connector-python。可以使用以下命令安装:

pip install mysql-connector-python

连接MySQL数据库

在Python中连接MySQL数据库需要使用mysql-connector-python模块。首先,需要导入该模块,然后使用connect()方法连接数据库。在connect()方法中,需要指定MySQL服务器的主机名、用户名、密码和要连接的数据库名称。

python

import mysql.connector

mydb = mysql.connector.connect(

  host="localhost",

  user="yourusername",

  password="yourpassword",

  database="mydatabase"

)

print(mydb)

创建数据库和表

在连接MySQL数据库之后,可以使用Python创建数据库和表。首先,需要创建一个游标对象,然后使用execute()方法执行SQL语句。以下是一个创建表的示例:

python

mycursor = mydb.cursor()

mycursor.execute("CREATE TABLE customers (name VARCHAR(255), address VARCHAR(255))")

插入数据

在创建表之后,可以使用Python向MySQL数据库插入数据。需要使用execute()方法执行INSERT INTO语句。以下是一个插入数据的示例:

python

mycursor = mydb.cursor()

sql = "INSERT INTO customers (name, address) VALUES (%s, %s)"

val = ("John", "Highway 21")

mycursor.execute(sql, val)

mydb.commit()

print(mycursor.rowcount, "record inserted.")

查询数据

在向MySQL数据库插入数据之后,可以使用Python查询数据。需要使用execute()方法执行SELECT语句,然后使用fetchall()方法获取所有结果。以下是一个查询数据的示例:

python

mycursor = mydb.cursor()

mycursor.execute("SELECT * FROM customers")

myresult = mycursor.fetchall()

for x in myresult:

  print(x)

更新数据

在查询数据之后,可以使用Python更新MySQL数据库中的数据。需要使用execute()方法执行UPDATE语句。以下是一个更新数据的示例:

python

mycursor = mydb.cursor()

sql = "UPDATE customers SET address = 'Canyon 123' WHERE name = 'John'"

mycursor.execute(sql)

mydb.commit()

print(mycursor.rowcount, "record(s) affected")

删除数据

在更新数据之后,可以使用Python删除MySQL数据库中的数据。需要使用execute()方法执行DELETE语句。以下是一个删除数据的示例:

python

mycursor = mydb.cursor()

sql = "DELETE FROM customers WHERE name = 'John'"

mycursor.execute(sql)

mydb.commit()

print(mycursor.rowcount, "record(s) deleted")

    本文介绍了如何使用Python连接和操作MySQL数据库。需要注意的是,在使用Python操作MySQL数据库之前,需要先安装MySQL驱动。然后,可以使用Python创建数据库和表、插入数据、查询数据、更新数据和删除数据。MySQL是一种广泛使用的关系型数据库管理系统,具有高可靠性和高并发性,可以存储大规模数据。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/225787.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

IDEA——还在手动new对象set值嘛,GenerateAllSetter插件帮你解决!!!

IDEA插件 一、GenerateAllSetter插件介绍二、如何下载安装三、如何使用 总结 最近项目上有些测试需要有很多属性,而且大部分的属性都是要设置值的,一个一个手动set设值很繁琐,就想着有没有能解决这个问题的办法,就发现了一个非常好…

HarmonyOS(十二)——全面认识HarmonyOS三种渲染控制

渲染控制概述 ArkUI通过自定义组件的build()函数和builder装饰器中的声明式UI描述语句构建相应的UI。在声明式描述语句中开发者除了使用系统组件外,还可以使用渲染控制语句来辅助UI的构建,这些渲染控制语句包括控制组件是否显示的条件渲染语句&#xff…

微软Microsoft二面面试题分享通过总结(不是标准答案分享

误打误撞 我写的shitty代码 当年面试算法开发岗竟然通过了 Background 先说下背景,软件工程本科毕业之后,当年8月到北欧读两年制硕士。面试发生在当年的11月,微软哥本哈根,location在丹麦的哥本哈根lingby(是不是这么…

[ERROR] ocp-server-ce-py_script_start_check-4.2.1 RuntimeError: ‘tenant_name‘

Oceanbase 安装成功后关闭OCP,在重新启动时报错 使用OBD 启动OCP报如下错误 [adminobd ~]$ obd cluster start ocp Get local repositories ok Search plugins ok Open ssh connection ok Load cluster param plugin ok Check before start ocp-server x [ERROR] …

C++异步网络库workflow系列教程(3)Series串联任务流

往期教程 如果觉得写的可以,请给一个点赞关注支持一下 观看之前请先看,往期的两篇博客教程,否则这篇博客没办法看懂 workFlow c异步网络库编译教程与简介 C异步网络库workflow入门教程(1)HTTP任务 C异步网络库workflow系列教程(2)redis任务 简介 首先,workflow是任务流的意…

ThingWorx/Vuforia—工业物联网和AR平台

产品概述 ThingWorx是美国PTC公司旗下的一款物联网和AR平台,它提供了适用于IoT的开发工具和能力,使开发者可以为工业物联网快速构建和部署变革性的智能互联解决方案,使创新者能够快速为当今的智能互联世界提供优异的应用程序、解决方案和用户…

人工智能计算机视觉:解析现状与未来趋势

导言 随着人工智能的迅速发展,计算机视觉技术逐渐成为引领创新的关键领域。本文将深入探讨人工智能在计算机视觉方面的最新进展、关键挑战以及未来可能的趋势。 1. 简介 计算机视觉是人工智能的一个重要分支,其目标是使机器具备类似于人类视觉的能力。这…

k8syaml提供的几个有意思的功能,Kubernetes在线工具网站

k8syaml.cn 提供的几个有意思的功能。 一、yaml资源快速生成 之前编写operator的helm的时候就需要自己写deployment、service、configmap这些资源,那么多字段也记不清,都是先找个模版,然后copy改改,再看官方文档,添加…

智能优化算法应用:基于和声算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用:基于和声算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于和声算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.和声算法4.实验参数设定5.算法结果6.参考文献7.MA…

Jenkins Pipeline 脚本优化实践:从繁琐到简洁

引言 在持续集成的过程中,Jenkins Pipeline 是非常关键的一环。它定义了如何自动编译、测试和部署代码。随着项目的不断发展,Pipeline 的复杂性也在不断上升,这就需要我们持续优化 Pipeline 脚本,以提高代码的可读性和维护性。本…

Python如何匹配库的版本

目录 1. 匹配库的版本 2. Python中pip,库,编译环境的问题回答总结 2.1 虚拟环境 2.2 pip,安装库,版本 1. 匹配库的版本 (别的库的版本冲突同理) 在搭建pyansys环境的时候,安装grpcio-tools…

3、APScheduler: 详解Trigger种类和用法【Python3测试任务管理总结】

APScheduler提供了多种类型的触发器(Trigger),每种触发器适用于不同的任务调度需求。 触发器包含调度逻辑。每个作业都有其自己的触发器,该触发器确定作业应该在何时运行下一次。除了它们的初始配置之外,触发器是完全无状态的。 常见的触发器及其用法 1. SimpleTrigger…

【基础篇】1.4 IO分配(二)

1.7 ADC ADC外设指的是模拟数字转换器(Analog-to-Digital Converter,简称ADC)的硬件设备。ADC是一种将模拟信号转换为数字信号的电子设备,广泛应用于各种数字信号处理系统中。 ADC外设通常作为一个独立的集成电路芯片&#xff0…

springboot(ssm宠物美容机构CRM系统 宠物服务商城系统Java系统

springboot(ssm宠物美容机构CRM系统 客户关系管理系统Java系统 开发语言:Java 框架:ssm/springboot vue JDK版本:JDK1.8(或11) 服务器:tomcat 数据库:mysql 5.7(或8.0&#xff…

uniapp和vue如何使用SheetJS导出excel?

uniapp和vue如何使用SheetJS导出excel? SheetJS中文文档详解 一、SheetJS是什么 SheetJS是一款适用于浏览器和Node.js的开源电子表格解析库。 与其他电子表格解析库相比,SheetJS拥有强大的电子表格解析功能,即使电子表格很大,也可…

Transformer注意力机制模型介绍

文章目录 前言高层次的自我关注(Self-Attention at a High Level)编码器(Encoder)多头注意力机制(The Beast With Many Heads)残差神经网络解码器(Decoder)线性(Linear)层和softmax层位置编码总结参考文献前言 Transformer是一个利用注意力机制来提高模型训练速度的模型。关于…

RT-DETR优化:轻量化卷积设计 | DualConv双卷积魔改RT-DETR结构

🚀🚀🚀本文改进: DualConv双卷积魔改v8结构,达到轻量化的同时并能够实现小幅涨点 🚀🚀🚀RT-DETR改进创新专栏:http://t.csdnimg.cn/vuQTz 学姐带你学习YOLOv8,从入门到创新,轻轻松松搞定科研; RT-DETR模型创新优化,涨点技巧分享,科研小助手; 1.DualC…

软件测试经典面试题(答案解析+视频讲解)

前言 (第一个就刷掉一大批人) 有很多“会自动化”的同学来咨询技术问题,他总会问到我一些元素定位的问题。元素定位其实都不算自动化面试的问题。 一般我都会问:你是定位不到吗?通常结果都是说确实定位不到。 做自…

真正可行的vue3迁移到nuxt3方法(本人亲测,完全避坑)

终于到了总结经验的时候了,这绝对是全网唯一、完全真正可行的干货。 在我看来,知识就是要拿来分享的,分享给他人也是在提高自己。我绝对不会搞什么订阅或者vip专栏来搞钱坑害各位, 因为我在csdn写文章最主要的目的是为了记录和总…

OpenJDK十几种发行版中强烈推荐的发行版:Adoptium Eclipse Temurin和Amazon Corretto

Adoptium Eclipse Temurin官网地址:Home | Adoptium 支持及维护它的厂家: 说明:它的前身是著名的AdoptOpenJDK,更新到jdk16后就停止更新了,因为AdoptOpenJDK移交给Eclipse基金会后改名为:Adoptium Eclipse…