Python操作MySQL数据库实例详解【安装、连接、增删改查等】

Python操作MySQL数据库实例详解

本文将以Python编程语言为例,介绍如何通过Python连接MySQL数据库实例,并进行增删改查等操作。

安装相关软件

在开始操作之前,需要安装一些相关软件,包括:

  • Python3.x或以上版本【下载地址链接】
  • PyMySQL库:Python连接MySQL数据库的库,可通过pip install pymysql命令进行安装

连接MySQL数据库

在Python程序中连接MySQL数据库,需要先从pymysql库中导入连接相关的方法,示例代码如下:

import pymysql

# 连接MySQL数据库
conn = pymysql.connect(
    host='localhost',
    port=3306,
    user='root',
    password='password',
    database='test_db')

上述代码中,我们通过pymysql的connect方法连接到了本地的MySQL服务。其中host参数表示MySQL服务器的IP地址,port参数表示MySQL服务绑定的端口号,user参数表示登录MySQL的用户名,password参数表示登录MySQL的密码,database参数表示要操作的数据库名称。

连接成功后,我们需要获取MySQL数据库游标,示例代码如下:

# 获取MySQL游标
cursor = conn.cursor()

创建MySQL表格

使用Python操作MySQL数据库之前,需要先创建数据表。我们可以通过Python程序执行SQL语句来创建MySQL表格,示例代码如下:

# 创建表格
cursor.execute('''CREATE TABLE IF NOT EXISTS `student` (
    `id` INT UNSIGNED NOT NULL AUTO_INCREMENT ,
    `name` VARCHAR(255) NOT NULL ,
    `age` INT UNSIGNED NOT NULL ,
    PRIMARY KEY (`id`)
) ENGINE = InnoDB CHARSET=utf8mb4''')

上述代码中,我们创建了名为student的表格,并定义了三个字段:id、name和age。其中id为自动递增的无符号整数类型,name和age分别为字符型和整型。

插入数据

插入数据是在业务逻辑中最常见的操作之一,我们可以通过pymysql库的execute方法执行插入数据的SQL语句,示例代码如下:

# 插入数据
sql = "INSERT INTO `student` (`name`, `age`) VALUES (%s, %s)"
cursor.execute(sql, ('张三', 18))
conn.commit()

上述代码中,我们插入了一条记录,其中name和age分别为张三和18。

查询数据

查询数据是在业务逻辑中另一个常见的操作,我们可以通过pymysql库的execute方法执行查询数据的SQL语句,示例代码如下:

# 查询数据
sql = "SELECT * FROM `student` WHERE age > %s"
cursor.execute(sql, (16,))
result = cursor.fetchall()

for row in result:
    print(row)

上述代码中,我们查询了年龄大于16的学生信息,并打印输出了结果。其中fetchall方法返回所有查询结果,返回的结果是一个元组列表。

更新数据

更新数据需要执行SQL语句,我们可以通过pymysql库的execute方法执行更新数据的SQL语句,示例代码如下:

# 更新数据
sql = "UPDATE `student` SET age = %s WHERE name = %s"
cursor.execute(sql, (20, '张三'))
conn.commit()

上述代码中,我们更新了张三的年龄为20岁。

删除数据

删除数据需要执行SQL语句,我们可以通过pymysql库的execute方法执行删除数据的SQL语句,示例代码如下:

# 删除数据
sql = "DELETE FROM `student` WHERE name = %s"
cursor.execute(sql, ('张三',))
conn.commit()

上述代码中,我们删除了名为张三的学生信息。

示例说明

以下是一个完整的示例程序,实现了与MySQL数据库的交互,并添加了插入、查询、更新和删除等操作。

import pymysql

conn = pymysql.connect(
    host='localhost',
    port=3306,
    user='root',
    password='password',
    database='test_db')

cursor = conn.cursor()

# 创建表格
cursor.execute('''CREATE TABLE IF NOT EXISTS `student` (
    `id` INT UNSIGNED NOT NULL AUTO_INCREMENT ,
    `name` VARCHAR(255) NOT NULL ,
    `age` INT UNSIGNED NOT NULL ,
    PRIMARY KEY (`id`)
) ENGINE = InnoDB CHARSET=utf8mb4''')

# 插入数据
sql = "INSERT INTO `student` (`name`, `age`) VALUES (%s, %s)"
cursor.execute(sql, ('张三', 18))
conn.commit()

# 查询数据
sql = "SELECT * FROM `student` WHERE age > %s"
cursor.execute(sql, (16,))
result = cursor.fetchall()

for row in result:
    print(row)

# 更新数据
sql = "UPDATE `student` SET age = %s WHERE name = %s"
cursor.execute(sql, (20, '张三'))
conn.commit()

# 删除数据
sql = "DELETE FROM `student` WHERE name = %s"
cursor.execute(sql, ('张三',))
conn.commit()

cursor.close()
conn.close()

在上述示例程序中,我们先创建了一个名为student的表格,然后插入了一条名为张三、年龄为18岁的学生信息。之后进行了一次查询,查询年龄大于16岁的学生信息,并将查询结果输出。接着,我们将名为张三的学生信息的年龄改为了20岁,最后删除了名为张三的学生信息。

总结

通过本文的介绍,我们学习了如何使用Python编程语言连接MySQL数据库,并进行增删改查等基本的操作。在实际应用中,我们可以根据业务需求进行相应的操作,从而实现MySQL数据库的完整管理。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python操作MySQL数据库实例详解【安装、连接、增删改查等】 - Python技术站

(0)
上一篇 2023年5月18日
下一篇 2023年5月18日

相关文章

  • MySQL详细汇总常用函数

    MySQL详细汇总常用函数 MySQL中有很多常用的函数,这些函数可以帮助我们更加高效的进行数据查询和处理。本文将对MySQL中的常用函数进行汇总,并且给出相应的示例说明。 字符串函数 CONCAT CONCAT是将多个字符串进行拼接的函数。用法如下: CONCAT(str1, str2, str3, …) 示例: 假设我们有一个users表,其中存储了…

    database 2023年5月22日
    00
  • sql server如何利用开窗函数over()进行分组统计

    当我们需要对 SQL Server 数据库中的数据进行统计计算并按照一定的规则进行分组时,可以运用开窗函数 over()。over() 函数的作用是在查询结果集中为每一行计算指定的聚合函数,并且聚合函数的计算范围是针对整个数据集而不是单个分组的范围内。 此外,开窗函数 over() 还可以指定分区(partition by)和排序(order by)规则,进…

    database 2023年5月21日
    00
  • Django使用Redis进行缓存详细步骤

    下面我就为大家详细讲解一下Django使用Redis进行缓存的详细步骤,包括以下内容: 1.准备工作 在开始使用Django和Redis之前,先需要做一些准备工作,包括: 1.安装RedisRedis是一个开源内存中的数据结构存储,可以用作缓存、消息中间件和持久化。安装Redis可以到官网上下载相应的安装文件进行安装。 2.安装redis-pyredis-p…

    database 2023年5月22日
    00
  • mysql字符集和校对规则(Mysql校对集)

    MySQL字符集和校对规则是指在MySQL中使用哪种字符编码来存储数据以及如何基于这些编码进行比较排序。它对于数据的存储和检索至关重要,因为字符集和校对规则的错误设置可能会导致数据损坏和查询错误。 字符集 MySQL中支持多种字符集,包括ASCII、Latin1、UTF-8、GBK等。其中,UTF-8是目前最流行的字符集,具有广泛的应用和良好的跨平台性。 在…

    database 2023年5月22日
    00
  • MySQL TRUNCATE:清空表记录详解

    在MySQL中,TRUNCATE用于清空表中的记录,但该操作会将表结构保留。 与DELETE相比,TRUNCATE对于删除大量数据的情况下可以更高效,因为它不会在日志中保存每行操作。但是,由于它直接清空了整个表,所以在执行TRUNCATE之后将无法恢复数据。 语法: TRUNCATE TABLE table_name; 需要注意的是,TRUNCATE只能用于…

    MySQL 2023年3月9日
    00
  • 常用SQL语句(嵌套子查询/随机等等)详细整理

    常用SQL语句详细整理 嵌套子查询 嵌套子查询是指在一个SQL查询中嵌套另一个SQL查询,通常用于获取更为准确的结果或进行复杂的数据统计分析。嵌套子查询可以嵌套多层。 示例1:查询存在于子查询中的数据 SELECT * FROM table1 WHERE id IN (SELECT id FROM table2 WHERE field2=’value’); …

    database 2023年5月21日
    00
  • Centos 6.5下PHP 5.3安装ffmpeg扩展的步骤详解

    下面将为您分享Centos 6.5下PHP 5.3安装ffmpeg扩展的步骤详解: 前置条件 确保您已安装了CentOS 6.5操作系统 确保您已安装了PHP 5.3版本 确保您已安装了FFmpeg库 安装必要的软件包 在安装ffmeg的过程中,需要使用到一些必要的软件包,我们首先来安装它们。 sudo yum install gcc \ glibc-dev…

    database 2023年5月22日
    00
  • R语言实现操作MySQL数据库

    R语言实现操作MySQL数据库的完整攻略 MySQL是最流行的关系型数据库之一,而R语言是非常适合进行数据分析和处理的语言之一。本攻略将详细讲解如何用R语言连接和操作MySQL数据库。 安装必要的软件包 首先,我们需要安装RMySQL和DBI这两个R语言的库用于连接MySQL数据库,安装步骤如下: install.packages("RMySQL&…

    database 2023年5月18日
    00
合作推广
合作推广
分享本页
返回顶部