Python操作MySQL数据库:基础教程与示例代码

ops/2024/10/18 5:00:29/

在这里插入图片描述
💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。
在这里插入图片描述

  • 推荐:「stormsha的主页」👈,「stormsha的知识库」👈持续学习,不断总结,共同进步,为了踏实,做好当下事儿~

  • 专栏导航

    • Python系列: Python面试题合集,剑指大厂
    • Git系列: Git操作技巧
    • GO系列: 记录博主学习GO语言的笔记,该笔记专栏尽量写的试用所有入门GO语言的初学者
    • 数据库系列: 详细总结了常用数据库 mysql 技术点,以及工作中遇到的 mysql 问题等
    • 运维系列: 总结好用的命令,高效开发
    • 算法与数据结构系列: 总结数据结构和算法,不同类型针对性训练,提升编程思维

    非常期待和您一起在这个小小的网络世界里共同探索、学习和成长。💝💝💝 ✨✨ 欢迎订阅本专栏 ✨✨

    💖The Start💖点点关注,收藏不迷路💖

    📒文章目录

        • 安装mysql-connector-python
        • 连接MySQL数据库
        • 创建游标对象
        • 创建表
        • 插入数据
        • 查询数据
        • 更新数据
        • 删除数据
        • 关闭游标和连接
        • 注意事项


在Python中操作MySQL数据库,你可以使用mysql-connector-python库,这是MySQL官方提供的驱动程序。以下是一些基本的步骤和示例代码,展示如何使用Python连接MySQL数据库,以及执行常见的数据库操作,如创建表、插入数据、查询数据和删除数据。

mysqlconnectorpython_24">安装mysql-connector-python

首先,你需要安装mysql-connector-python库。你可以使用pip来安装:

pip install mysql-connector-python

连接MySQL数据库

python">import mysql.connector# 配置数据库连接参数
config = {'user': 'your_username','password': 'your_password','host': 'localhost','database': 'your_database','raise_on_warnings': True
}# 建立连接
try:cnx = mysql.connector.connect(**config)print("Connection established")
except mysql.connector.Error as err:print(f"Error: {err}")

创建游标对象

游标(Cursor)是一个数据库查询的接口,允许你执行SQL语句并处理结果。

python">cursor = cnx.cursor()

创建表

python">create_table_query = """
CREATE TABLE IF NOT EXISTS users (id INT AUTO_INCREMENT PRIMARY KEY,name VARCHAR(255) NOT NULL,age INT
);
"""cursor.execute(create_table_query)
cnx.commit()  # 执行SQL语句并提交到数据库

插入数据

python">insert_query = """
INSERT INTO users (name, age) VALUES (%s, %s);
"""# 要插入的数据
data = ('John Doe', 30)try:cursor.execute(insert_query, data)cnx.commit()print("Data inserted successfully")
except mysql.connector.Error as err:print(f"Error: {err}")

查询数据

python">select_query = "SELECT * FROM users;"cursor.execute(select_query)
for row in cursor:print(row)  # row是一个元组

更新数据

python">update_query = """
UPDATE users SET age = %s WHERE name = %s;
"""data = (31, 'John Doe')
try:cursor.execute(update_query, data)cnx.commit()print("Data updated successfully")
except mysql.connector.Error as err:print(f"Error: {err}")

删除数据

python">delete_query = "DELETE FROM users WHERE name = %s;"data = ('John Doe',)
try:cursor.execute(delete_query, data)cnx.commit()print("Data deleted successfully")
except mysql.connector.Error as err:print(f"Error: {err}")

关闭游标和连接

完成数据库操作后,应该关闭游标和连接。

python">cursor.close()
cnx.close()

注意事项

  1. 在执行写操作(如插入、更新、删除)后,记得调用commit()方法来提交事务。
  2. 如果在执行操作时出现错误,可以使用rollback()方法回滚事务。
  3. 使用参数化查询可以防止SQL注入攻击。
  4. 确保在完成数据库操作后关闭游标和连接,以释放资源。

🔥🔥🔥道阻且长,行则将至,让我们一起加油吧!🌙🌙🌙

💖The End💖点点关注,收藏不迷路💖

http://www.ppmy.cn/ops/126392.html

相关文章

【数据分享】全国资源和环境-环境污染治理投资(1998-2021年)

数据介绍 一级标题指标名称单位指标解释资源和环境环境污染治理投资总额亿元环境污染治理投资指在污染源治理和城市环境基础设施建设的资金投入中,用于形成固定资产的资金,其中污染源治理投资包括工业污染源治理投资和“三同时”项目环保投资两部分。环…

解决高版本使用Gson报错Caused by: java.lang.NoClassDefFoundError: java/sql/Time

开发项目使用jdk21&#xff0c;版本较高&#xff0c;需要用模块化引入。在使用gson转换json数据时&#xff0c;报错 Caused by: java.lang.NoClassDefFoundError: java/sql/Time at gson2.8.5/com.google.gson.Gson.<init>(Gson.java:265) at gson2.8.5/com.google.gson…

ChatGPT写出优质论文的关键第一步:角色预设提示词指令

在使用ChatGPT做学术研究和论文写作中,有效的提示词指令可以帮助我们更好地利用智能AI工具来提升工作效率和质量。在整个操作过程中,首要第一步就是角色预设的指令,这是能否使用ChatGPT高效写出优质论文的关键步骤。以下是五个重要且常用到的学术角色的预设提示词指令 一、…

YZ系列工具之YZ09:VBA_Excel之读心术

我给VBA下的定义&#xff1a;VBA是个人小型自动化处理的有效工具。利用好了&#xff0c;可以大大提高自己的工作效率&#xff0c;而且可以提高数据的准确度。我的教程一共九套一部VBA手册&#xff0c;教程分为初级、中级、高级三大部分。是对VBA的系统讲解&#xff0c;从简单的…

Spring Boot知识管理系统:敏捷开发实践

3系统分析 3.1可行性分析 通过对本知识管理系统实行的目的初步调查和分析&#xff0c;提出可行性方案并对其一一进行论证。我们在这里主要从技术可行性、经济可行性、操作可行性等方面进行分析。 3.1.1技术可行性 本知识管理系统采用JAVA作为开发语言&#xff0c;Spring Boot框…

自定义注解和组件扫描在Spring Boot中动态注册Bean(一)

​ 博客主页: 南来_北往 系列专栏&#xff1a;Spring Boot实战 在Spring Boot中&#xff0c;自定义注解和组件扫描是两种强大的机制&#xff0c;它们允许开发者以声明性的方式动态注册Bean。这种方式不仅提高了代码的可读性和可维护性&#xff0c;还使得Spring Boot应用的…

如何分离人声和背景音乐?精准音频分离,提升你的作品质量

在音频编辑和处理的领域中&#xff0c;分离人声和背景音乐是一项颇具挑战的任务&#xff0c;但也是众多音频爱好者和专业人士经常面临的需求。无论是为了制作卡拉OK伴奏、提升视频制作质量&#xff0c;还是进行音乐分析和研究&#xff0c;掌握人声与背景音乐的分离技术都显得至…

大数据存储计算平台EasyMR:大数据集群动态扩缩容,快速提升集群服务能力

在当今的数据驱动时代&#xff0c;组织面临着数据量的爆炸性增长。为了有效管理和存储这些数据&#xff0c;许多组织依赖于 Hadoop 这样的分布式存储系统。Hadoop 集群通过在多个节点上存储数据的冗余副本&#xff0c;提供了高可靠性和可扩展性。然而&#xff0c;随着数据量的不…